gpt4 book ai didi

c# - WPF - 从代码隐藏/附加行为绑定(bind)到显式实现的接口(interface)属性

转载 作者:太空狗 更新时间:2023-10-29 21:18:26 25 4
gpt4 key购买 nike

我正在尝试从代码隐藏设置到显式实现的接口(interface)属性的绑定(bind)。代码隐藏绑定(bind)的原因是绑定(bind)属性的路径只能在运行时确定。

在 XAML 中,可以这样绑定(bind)(MainWindow.xaml 中的示例):

<TextBox Text="{Binding (local:IViewModel.Property)}"/>

事实上,绑定(bind)在后面的代码中以类似的方式工作(来自 MainWindow.xaml.cs):

var binding = new Binding("(local:IViewModel.Property)");

因为 WPF 能够获取命名空间映射。

我的问题是,当命名空间映射不存在时(例如,在附加行为中),我如何形成这样的绑定(bind)?

非常感谢!

最佳答案

您将指定完整的 PropertyPath:

var propertyInfo = typeof(IViewModel).GetProperty("Property");
var propertyPath = new PropertyPath("(0)", propertyInfo);
var binding = new Binding
{
Path = propertyPath
};

有关传递给上面 PropertyPath 的语法的详细信息,请参阅 PropertyPath.Path .

关于c# - WPF - 从代码隐藏/附加行为绑定(bind)到显式实现的接口(interface)属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12854466/

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