gpt4 book ai didi

wpf - 从文本框中删除时检测属性更改

转载 作者:行者123 更新时间:2023-12-03 10:37:52 25 4
gpt4 key购买 nike

我在 MVVM 模式下使用 WPF 和 VB.Net。

我正在尝试编辑从数据库中获取的记录。当我突出显示文本然后从键盘按退格键时,我的文本框绑定(bind)在 viewmodel 的属性中,我注意到它没有检测到文本框中的值已被删除。我是不是忘记了什么?

这是我的 XAML:

 <TextBox Text="{Binding TimeTaken,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay,ValidatesOnDataErrors=True}" TextChanged="txt_TextChanged" Style="{StaticResource DialogTextBox}"  Height="23" Width="100" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="2"/>

这是我从 ViewModel 获得的属性(property):
    Public Property TimeTaken As Single
Get
Return Me.GetPropertyValue(Reflection.MethodBase.GetCurrentMethod.Name)
End Get
Set(ByVal value As Single)
Me.SetPropertyValue(Reflection.MethodBase.GetCurrentMethod.Name, value)
End Set
End Property

我只在使用突出显示删除时遇到它。但是当我删除每个文本时,将设置更改。

最佳答案

因为您绑定(bind)到 Text(String) <-> Single ,
它处理文本的输入和对它们进行强制转换(单次),当给出一个空字符串时,强制转换什么也不返回。
您可以使用转换器 .. 但真正的问题是您为什么不绑定(bind)到 String 类型属性,因为最后您在 setter 中设置了某个对象的 Name 属性。

关于wpf - 从文本框中删除时检测属性更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18694531/

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