我有一个绑定到ViewModel的Text属性的TextBox,具有以下设置:
Xaml
C#
当我在文本框中输入一些内容时,它成功地设置了ViewModel的Text属性。问题是,WPF忽略了由其自己的更新引发的属性更改事件。这导致用户看不到他们键入的文本转换为小写字母。
我该如何改变这种行为,使得文本框更新为小写字母的文本?
注意:这只是我用来说明WPF忽略事件问题的示例。我并不真正关心将字符串转换为小写字母或任何涉及String.Equals(string, string)的问题。
Xaml
<TextBox Text="{Binding Text}"/>
C#
public class ViewModel : INotifyPropertyChanged
{
public string Text
{
get
{
return m_Text;
}
set
{
if (String.Equals(m_Text, value))
{
return;
}
m_Text = value.ToLower();
RaisePropertyChanged("Text");
}
}
// Snip
}
当我在文本框中输入一些内容时,它成功地设置了ViewModel的Text属性。问题是,WPF忽略了由其自己的更新引发的属性更改事件。这导致用户看不到他们键入的文本转换为小写字母。
我该如何改变这种行为,使得文本框更新为小写字母的文本?
注意:这只是我用来说明WPF忽略事件问题的示例。我并不真正关心将字符串转换为小写字母或任何涉及String.Equals(string, string)的问题。