gpt4 book ai didi

wpf - 通过样式在 TextBox 上设置 WPF Binding.StringFormat 属性

转载 作者:行者123 更新时间:2023-12-04 12:41:02 25 4
gpt4 key购买 nike

我有一个 WPF 应用程序包含许多 TextBox es 具有不同类型的绑定(bind),它们都共享相同的 StringFormat属性(它是一个技术应用程序,文本框应该显示单位为“xxx mm”的值......)

我想在 XAML/Designer 中设置绑定(bind),但我想避免在每个单独的绑定(bind)上设置 TextFormat 属性。有没有办法使用样式来做到这一点?

如果我尝试在 Setter 中设置绑定(bind)对于 Text 属性,例如

    <Style x:Name="mmtext" TargetType="TextBox" x:Key="mmtext">
<Setter Property="Text" Value="{Binding Path=A,StringFormat={}{0} mm}" />
</Style>

我需要提供 Path在 Setters Value 属性中,我无法在 XAML 本身中定义任何绑定(bind)(因为这会覆盖样式中设置的值)。

有没有办法只设置/修改 StringFormat使用样式的单个绑定(bind)中的属性(即 Text 属性的绑定(bind))?

还是我需要寻找模板或自定义控件?

最佳答案

您可能会绑定(bind)文本框的 DataContext 而不是 text 属性

 <TextBox DataContext="{Binding Path=A}" />

然后使用像
<Style x:Name="mmtext" TargetType="TextBox" x:Key="mmtext">
<Setter Property="Text" Value="{Binding Path=., StringFormat={}{0} mm}" />
</Style>

对于双向绑定(bind),无论如何您都需要一个转换器来摆脱额外的 mms

关于wpf - 通过样式在 TextBox 上设置 WPF Binding.StringFormat 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24569051/

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