gpt4 book ai didi

c# - 在 Caliburn.Micro 约定绑定(bind)文本框中自定义字符串格式

转载 作者:太空狗 更新时间:2023-10-29 21:54:56 24 4
gpt4 key购买 nike

我有一个 WPF TextBox,它通过 Caliburn.Micro 命名约定绑定(bind)到 View 模型编号属性 Distance。我希望能够自定义 TextBox 字符串格式,同时保留 Caliburn.Micro 已设置的约定绑定(bind)。我应该怎么做?

来 self 的 View 模型:

public double Distance
{
get { return _distance; }
set
{
_distance = value;
NotifyOfPropertyChange(() => Distance);
}
}

从我的 View :

<TextBox x:Name="Distance"/>

Distance 不为零时,我想用一组固定的小数显示数字,而当 Distance 为零时,我希望文本框是空的。

使用显式绑定(bind),我可以将 TextBox.Text 属性绑定(bind)到 Distance,然后我可以同时设置 StringFormat:

<TextBox x:Name="Distance" Text="{Binding Distance, StringFormat=0.000;;#}"/>

但是,显式 Text 绑定(bind)会短路 Caliburn.Micro 命名约定绑定(bind)。是否可以自定义字符串格式而不必同时设置 TextBox.Text 属性的绑定(bind)路径,这样我就可以完全依赖 Caliburn.Micro 来处理Distance-to-TextBox 绑定(bind)?

最佳答案

你想做的事没有可能的方法。最简单的方法是您自己提供。第二种方法是在 ViewModel 中公开字符串属性并在 getter 中对其进行预格式化。

关于c# - 在 Caliburn.Micro 约定绑定(bind)文本框中自定义字符串格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11986661/

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