gpt4 book ai didi

wpf - 在 shell View 模型类中的属性上绑定(bind) WPF 窗口标题的问题 [Caliburn.Micro]

转载 作者:行者123 更新时间:2023-12-04 05:09:35 24 4
gpt4 key购买 nike

我在 WPF Window 的 Title 属性上的 shell View 模型类中的绑定(bind)属性有一个简单的问题 - 它是 shell。

我的外壳 View 如下所示:

<Window x:Class="Spirit.Views.ShellView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="{Binding Path=Title}" >
<Grid>
<ContentControl x:Name="ActiveItem" />
</Grid>
</Window>

外壳 View 模型类:
 [Export(typeof(IShellViewModel))]
public class ShellViewModel : Conductor<IScreen>.Collection.OneActive, IShellViewModel
{
private string _title;

public string Title
{
get { return _title; }
set
{
_title = value;
NotifyOfPropertyChange(()=>Title);
}
}

public ShellViewModel()
{
Title = "Spirit";
}
}

如果我运行外壳 View (WPF 窗口)的应用程序标题是 Namespace.ShellViewModelClass,则外壳 View 模型类中没有属性标题的值。

如果我在 shell View 中激活某个屏幕,则窗口的 Title 属性是 Namespace.ViewModelClass。

我怎样才能消除这种行为?感谢您的建议。

最佳答案

由于 IScreen 是使用 IHaveDisplayName 定义的,并且 CM 框架的 Screen 类具有 DisplayName 属性,因此您只需在 ShellViewModel 中设置该属性,如下所示:

public ShellViewModel()
{
base.DisplayName = "Spirit";
}

关于wpf - 在 shell View 模型类中的属性上绑定(bind) WPF 窗口标题的问题 [Caliburn.Micro],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4615467/

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