我在尋找文本框水印功能時遇到了這種方法。
<TextBox Name="txtBoxName" Width="120" Height="23">
<TextBox.Resources>
<VisualBrush x:Key="HelpBrush" TileMode="None" Opacity="0.3" Stretch="None" AlignmentX="Left">
<VisualBrush.Visual>
<TextBlock FontStyle="Italic" Text="Watermark effect"/>
</VisualBrush.Visual>
</VisualBrush>
</TextBox.Resources>
<TextBox.Style>
<Style TargetType="TextBox">
<Setter Property="Height" Value="23"/>
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="VerticalAlignment" Value="Top"/>
<Style.Triggers>
<Trigger Property="Text" Value="{x:Null}">
<Setter Property="Background" Value="{StaticResource HelpBrush}"/>
</Trigger>
<Trigger Property="Text" Value="">
<Setter Property="Background" Value="{StaticResource HelpBrush}"/>
</Trigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
我想控制 VisualBrush 中文本塊的邊距。
如果在里面設定邊距,它不會改變。
你怎么能移動它?
謝謝。
在此處輸入圖片說明
uj5u.com熱心網友回復:
將 TextBlock 放入某個容器中,例如 Grid
<VisualBrush.Visual>
<Grid Background="Transparent">
<TextBlock FontStyle="Italic" Text="Watermark effect" Margin="15,0"/>
</Grid>
</VisualBrush.Visual>
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/376939.html
上一篇:WPF更改或覆寫默認系統顏色
下一篇:由于我的樣式而發生決議例外
