gpt4 book ai didi

c# - 分别绑定(bind) OneWay 和 OneWayToSource?

转载 作者:行者123 更新时间:2023-11-30 23:14:14 25 4
gpt4 key购买 nike

是否可以在我的模型中使用 OneWay 模式将 TextBox Text 字段绑定(bind)到属性 TextView,并绑定(bind)到另一个属性 TextInput 模式为 OneWayToSource?

即。如果我更改代码中的 TextView 属性,wpf 控件内容会发生变化。如果我在 TextBox 中键入内容,更改会反射(reflect)在 TextInput 中。

我同意这不是正确的方法,但如果能够做到这一点,我现在可以省去很多工作。

最佳答案

Is it possible to bind a TextBox Text field to a property TextView in my model with mode OneWay, and bind to another property TextInput with mode OneWayToSource?

没有。您只能将单个绑定(bind)应用到目标属性。

您可以使用多转换器将多个属性的值转换为一个目标值:https://blog.csainty.com/2009/12/wpf-multibinding-and.html .

像这样:

<TextBlock>
<TextBlock.Text>
<MultiBinding Converter="{StaticResource MultiValueConverter}">
<Binding Path="TextView" />
<Binding Path="TextInput" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>

public class NameMultiValueConverter : IMultiValueConverter
{
private string _textView;
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
//display the value of TextView
_textView = values[0].ToString();
return _textView;
}

public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
{
return new object[] { _textView, /* TextInput: */ value.ToString() };
}
}

或者,您可以在源属性的 setter 中处理转换逻辑。

关于c# - 分别绑定(bind) OneWay 和 OneWayToSource?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43225692/

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