gpt4 book ai didi

c# - TextBox 变空时 UpdateSourceTrigger 不起作用

转载 作者:行者123 更新时间:2023-12-04 00:43:52 24 4
gpt4 key购买 nike

我有以下 XAML -

<TextBox Text="{Binding Path=NumberOfItems, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True}" />
<Button Command="{Binding Path=StartCommand}">Start</Button>

在 ViewModel 中 -

public string this[string columnName]
{
get
{
string result = null;
switch (columnName)
{
case "NumberOfItems":
if (this.NumberOfItems <= 0)
{
result = "Items required";
}
break;
}

return result;
}
}

每当 TextBox 更改值时,触发器就会相应地工作。但在以下情况下,它不起作用 -

  1. 当用户在选择文本框的整个文本后按下键盘上的删除按钮时。

  2. 当用户删除 TextBox 中的最后一个字符时。

但是 ValidatesOnDataError 正在工作。

当 TextBox 为空时,如何让它工作?

当用户输入任何无效数据时,文本框样式会发生变化。我希望通过单击“开始”按钮了解这一点。

如何让开始按钮知道 TextBox 有无效数据?

最佳答案

我猜您正在尝试将整数类型的属性绑定(bind)到文本框的文本属性。由于整数不能为空,因此空字符串在这种情况下不起作用。您可以使用可为 null 的整数,也可以创建自己的转换器来处理空字符串。

关于c# - TextBox 变空时 UpdateSourceTrigger 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14850132/

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