gpt4 book ai didi

silverlight - Caliburn.Micro 中单个 View 中的两个动态分配的 ContentControl

转载 作者:行者123 更新时间:2023-12-04 02:39:54 26 4
gpt4 key购买 nike

我有一个包含两个 ContentControl 的 UserControl,这两个 ContentControl 需要在运行时将不同的 UserControl View 绑定(bind)到它们。附加属性解决方案注明here似乎在 Silverlight 中不起作用。或者,我做错了什么。我也,找到this ,但也没有带来任何欢乐。

我将一个 ContentControl 命名为“ActiveItem”来工作。但是,当然,我不能有两个同名的 ContentControl。

在此先感谢您的帮助,

吉姆

最佳答案

只需在主视图模型上公开两个公共(public)属性,每个属性都是您希望显示的 View 模型类型的一个实例。然后,在您的 View 中有一个具有相应名称的 ContentControl。例如:

public class MyMainViewModel
{
private NavigationViewModel navigation;
private MyContentViewModel main;

public MyMainViewModel()
{
// better to inject factories using constructor injection here
this.Navigation = new NavigationViewModel();
this.Main = new MyContentViewModel();
}

public NavigationViewModel Navigation
{
get { return navigation; }
set { navigation= value; NotifyOfPropertyChanged(() => this.Navigation); }
}

public MyContentViewModel Main
{
get { return main; }
set { main= value; NotifyOfPropertyChanged(() => this.Main); }
}

...
}

<ContentControl x:Name="Navigation" />
...
<ContentControl x:Name="Main" />

关于silverlight - Caliburn.Micro 中单个 View 中的两个动态分配的 ContentControl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6893081/

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