gpt4 book ai didi

c# - WPF,c# - 自定义文本框显示属性并实现数据触发器

转载 作者:行者123 更新时间:2023-11-30 22:36:08 25 4
gpt4 key购买 nike

如何自定义文本框显示属性(比如边框、圆角半径等),并为要在其中输入的数据实现数据触发器。或者如何通过 xaml 一次自定义控件(比如文本框、列表框等)的外观和实现同一控件的数据触发器...

谁能帮我举个例子..

谢谢,塞卡。

最佳答案

首先,“显示属性”在WPF中通常被称为ControlTemplate。因此,您当然可以更改 TextBox 或其他控件的整个 ControlTemplate 并以您喜欢的任何方式修改它。例如,您可以将按钮的 ControlTemplate 更改为仅显示一个矩形。

<ControlTemplate x:Key="myNewButton" TargetType="{x:Type Button}">
<Rectangle Fill="{TemplateBinding Background}"/>
</ControlTemplate>


<Button Template="{StaticResource myNewButton}"/>

TemplateBinding 标记是将依赖项属性(在本例中为 Background)传递给您的 ControlTemplate 子项的方式。

现在,如果你想添加数据触发器,你可以在 ControlTemplate 本身中添加

<ControlTemplate x:Key="myNewButton" TargetType="{x:Type Button}">
<Rectangle x:Name="rect" Fill="{TemplateBinding Background}"/>

<ControlTemplate.Triggers>
<DataTrigger Binding="{Binding MyDataProperty}" Value="True">
<Setter TargetElement="rect" Property="Fill" Value="Green" />
</DataTrigger
</ControlTemplate.Triggers>

</ControlTemplate>

关于c# - WPF,c# - 自定义文本框显示属性并实现数据触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7147407/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com