我有一个 public bool ShowUnderline { get { return showUnderline; } set { showUnderline = value; OnPropertyChanged("ShowUnderline"); } }属性,我希望通过他控制Rectangle 的显隐
时间: 2024-03-05 20:52:45 浏览: 83
您可以使用数据绑定和数据触发器来实现根据ShowUnderline属性的值来控制Rectangle的显隐。例如,您可以将下面的代码添加到Border的下面:
```
<Border Margin="{Binding Path=CharacterSpacing, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=local:CustomFont}}">
<TextBlock Text="{Binding}" />
</Border>
<Rectangle Height="1" Fill="Gray" Margin="0,0,0,5">
<Rectangle.Style>
<Style TargetType="Rectangle">
<Setter Property="Visibility" Value="Collapsed" />
<Style.Triggers>
<DataTrigger Binding="{Binding ShowUnderline}" Value="True">
<Setter Property="Visibility" Value="Visible" />
</DataTrigger>
</Style.Triggers>
</Style>
</Rectangle.Style>
</Rectangle>
```
这将根据ShowUnderline属性的值来控制Rectangle的Visibility属性。如果ShowUnderline属性的值为True,则Rectangle将显示;否则,Rectangle将隐藏。您可以根据需要调整颜色、高度和间距。
阅读全文