gpt4 book ai didi

wpf - 文本框和默认按钮绑定(bind)更新得太晚了

转载 作者:行者123 更新时间:2023-12-02 01:23:35 25 4
gpt4 key购买 nike

我有一个带有这两个控件的简单 WPF 对话框:

<TextBox Text="{Binding MyText}"/>
<Button Command="{Binding MyCommand}" IsDefault="True"/>

现在,当我在 TextBox 中输入一些文本并使用鼠标单击按钮时,一切都会按预期进行:TextBox 将设置 MyText 并调用 MyCommand。

但是当我输入一些文本并按回车键“单击”默认按钮时,它不起作用。由于按下 Enter 后焦点不会离开 TextBox,因此绑定(bind)不会刷新 MyText。因此,当调用 MyCommand(有效)时,MyText 将包含旧数据。

如何在 MVVM 中解决此问题?在经典的代码隐藏中,我可能只会在 MyCommand 处理程序中调用“MyButton.Focus()”,但在 MVVM 中,MyCommand 处理程序对按钮一无所知。

那现在怎么办?

最佳答案

将 UpdateSourceTrigger 添加到您的 TextBox,其值为 PropertyChanged。文本框的默认行为是在失去焦点时更新源。

<TextBox Text="{Binding MyText, UpdateSourceTrigger=PropertyChanged}"/>

关于wpf - 文本框和默认按钮绑定(bind)更新得太晚了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2638175/

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