gpt4 book ai didi

MVVM Binding - 在 View 中创建控件,如何绑定(bind)到 ViewModel 中的属性?

转载 作者:行者123 更新时间:2023-12-03 10:50:14 26 4
gpt4 key购买 nike

我们在运行时将选项卡控件添加到我们的应用程序中。每个 tabcontrol 都被赋予一个 ViewModel 作为 DataContext。我们通过向主应用 View 发送消息来添加选项卡控件;该消息包含要用作数据上下文的 ViewModel。

从主应用 ViewModel 中,我们通过向主应用 View 发送消息以创建 TabItem 并将其添加到指定的 TabControl 来将 tabitems 添加到选项卡控件。

我想将 TabItem 的某些属性绑定(bind)到 TabControl 的 ViewModel 的某些属性;当然,这需要以编程方式完成。

由于 tabcontrol 和 tabitem 不知道 ViewModels(仅 DataContext),我如何指定 ViewModel 的属性来绑定(bind) tabitem 属性呢?

感谢您的任何建议...

    Messenger.Default.Register<AddTabControlMessage>(this, m =>  
{
TabControl tc = new TabControl();
tc.DataContext = m.ViewModel;
// etc.
} );

最佳答案

您可以将 DataContext 转换为 ViewModel 的类型,然后以这种方式访问​​属性。

tc.SomeProperty = ((MyViewModel)DataContext).SomeVMProperty;

关于MVVM Binding - 在 View 中创建控件,如何绑定(bind)到 ViewModel 中的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6549973/

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