C#Wpf文本框文本更改和预览输出之间的差异
我目前正在为我的文本框执行验证,我不确定要选择哪个事件,C#Wpf文本框文本更改和预览输出之间的差异,wpf,events,Wpf,Events,我目前正在为我的文本框执行验证,我不确定要选择哪个事件,TextChanged或previewtextendeput,因为两者似乎没有区别 这些事件有何不同 摘自框架文档: PreviewTestInput事件允许组件或应用程序侦听 用于以独立于设备的方式进行文本输入。键盘是最重要的 预演的主要手段;但是语言、笔迹和其他 输入设备也可以生成预览输出 因为在默认键盘中或通过 输入法编辑器多个键事件可能只引发一个文本输入 事件 此事件将为服务器创建别名 TextCompositionManager
TextChanged
或previewtextendeput
,因为两者似乎没有区别
这些事件有何不同 摘自框架文档: PreviewTestInput事件允许组件或应用程序侦听 用于以独立于设备的方式进行文本输入。键盘是最重要的 预演的主要手段;但是语言、笔迹和其他 输入设备也可以生成预览输出 因为在默认键盘中或通过 输入法编辑器多个键事件可能只引发一个文本输入 事件 此事件将为服务器创建别名 TextCompositionManager.PreviewTimeput此类的附加事件, 因此,当 UIElement作为基本元素继承。事件处理程序 附加到PreviewTestInput事件的附加到基础 TextCompositionManager.PreviewT退出附加事件并接收 相同的事件数据实例 对于文本框,当其文本更改时发生此事件;暂时 RichTextBox,当任何内容或格式更改时发生此事件 (例如,图像、表格或背景色) 我的2美分:
这两件事有很大的不同<代码>文本更改事件将在textbox处理文本并更新控件后执行。另一方面,当您关注文本框并在输入设备(例如键盘)上执行预执行操作时,即使文本框还不知道即将从设备输入的内容,也会执行
PreviewTimeput
事件。摘自框架文档:
PreviewTestInput事件允许组件或应用程序侦听
用于以独立于设备的方式进行文本输入。键盘是最重要的
预演的主要手段;但是语言、笔迹和其他
输入设备也可以生成预览输出
因为在默认键盘中或通过
输入法编辑器多个键事件可能只引发一个文本输入
事件
此事件将为服务器创建别名
TextCompositionManager.PreviewTimeput此类的附加事件,
因此,当
UIElement作为基本元素继承。事件处理程序
附加到PreviewTestInput事件的附加到基础
TextCompositionManager.PreviewT退出附加事件并接收
相同的事件数据实例
对于文本框,当其文本更改时发生此事件;暂时
RichTextBox,当任何内容或格式更改时发生此事件
(例如,图像、表格或背景色)
我的2美分:
这两件事有很大的不同<代码>文本更改事件将在textbox处理文本并更新控件后执行。另一方面,previewTimeput
事件将在您关注文本框并在输入设备(例如键盘)上执行预执行操作时执行,甚至在文本框对即将从设备输入的内容没有任何概念之前。当textbox
以独立于设备的方式获取文本时,事件将被触发previewTestInput
(类型)的事件参数的text属性将仅包含最后一个输入操作的文本。在键盘输入的情况下,最有可能是按下一个键,因此只有一个字符。其他输入方法,如语音输入,一次可以输入多个字符
该事件查看TextBox
的Text
属性,并在其文本以任何方式更改时发生。其类型为textchangedventargs
的事件参数包含一组TextChange
对象,这些对象包含有关所做更改的信息
至于你应该选择哪一个进行验证,答案是。。。也不由于您希望验证,我只能假设您将在项目的其他地方使用输入的文本。在WPF中,首选(即模型、视图、视图模型)体系结构,这意味着我们使用它作为输入。在MVVM中有多种验证TextBox
文本的方法,我首选的方法是接口和。前者在文本数据发送到ViewModel后执行验证,后者将在文本推送到ViewModel之前验证文本
希望这对你有帮助 当TextBox
以独立于设备的方式获取文本时,事件被触发。previewtdeput
(类型)的事件参数的text属性将仅包含最后一个输入操作的文本。在键盘输入的情况下,最有可能是按下一个键,因此只有一个字符。其他输入方法,如语音输入,一次可以输入多个字符
该事件查看TextBox
的Text
属性,并在其文本以任何方式更改时发生。其类型为textchangedventargs
的事件参数包含一组TextChange
对象,这些对象包含有关所做更改的信息
至于你应该选择哪一个进行验证,答案是。。。也不由于您希望验证,我只能假设您将在项目的其他地方使用输入的文本。在WPF中,首选(即模型、视图、视图模型)体系结构,这意味着我们使用它作为输入。在MVVM中有多种验证TextBox
文本的方法,我首选的方法是interf