gpt4 book ai didi

c# - 组合框文本属性双向绑定(bind)不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 23:32:40 25 4
gpt4 key购买 nike

我有一个 ComboBox,如下所示

<ComboBox VerticalAlignment="Center"  
Width="83.84"
Canvas.Left="626.24"
Canvas.Top="249.088" DataContext="{Binding Items[0]}"
Text="{Binding TextVariable, Mode=TwoWay, NotifyOnValidationError=True, TargetNullValue='', ValidatesOnDataErrors=True, ValidatesOnExceptions=True}"
Height="68.293"
Style="{StaticResource ComboBoxDialogControlQ69_74}" />

问题是:当我在我的 View 模型中为 TextVariable 设置值时,它会显示在 UI 上。但是当我在 UI 上更改它时,它不会在属性中更新。

我想我遗漏了一些非常明显的东西,我们将不胜感激。

最佳答案

当我尝试像下面那样在 ComboBox 上绑定(bind)文本时,效果非常好,

Text="{Binding TextVariable, Mode=TwoWay, UpdateSourceTrigger=LostFocus, NotifyOnValidationError=True, TargetNullValue='', ValidatesOnDataErrors=True, ValidatesOnExceptions=True}" 

我又添加了一项属性以使其可编辑。

IsEditable="True"

如果您需要对 PropertyChange 进行更改,请将 UpdateSourceTrigger 更改为 PropertyChanged

UpdateSourceTrigger=PropertyChanged

虚拟机

 public string TextVariable {
get
{ return _TextVariable; }
set
{
_TextVariable = value;
NotifyPropertyChanged();
}
}

关于c# - 组合框文本属性双向绑定(bind)不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31585578/

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