如何从ViewModel访问附加到窗口的Behaviors属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从ViewModel访问附加到窗口的Behaviors属性相关的知识,希望对你有一定的参考价值。

我在一个行为中有一个依赖项bool属性,该属性在Window中设置,在关闭window之前要求弹出确认消息。但是从ViewModel关闭它时,我不需要此弹出窗口。因此,我该如何访问行为中的属性以及如何将其设置为False。

<Window WindowState="Normal" WindowStyle="SingleBorderWindow" ResizeMode="NoResize" 
        behaviors:WndExitAftConfirmBehaviour.Enabled="True"/>

如何在ViewModel中访问Enabled属性以及如何将其设置为False?

答案

不是将其设置为常量True,而是将其绑定到视图模型中的布尔属性,并在关闭窗口时将该属性设置为False

如果您不使用数据绑定,则只需执行此操作:

Application.Current.MainWindow.SetValue(WndExitAftConfirmBehaviour.EnabledProperty, false);

以上是关于如何从ViewModel访问附加到窗口的Behaviors属性的主要内容,如果未能解决你的问题,请参考以下文章

fltk 从按钮将图像附加到窗口

如何从 ViewModel 命令生成的线程中关闭窗口? [复制]

如何从继承的用户控件访问 viewModel 依赖属性?

如何从 View 和关联的代码隐藏文件中访问我的 ViewModel?

如何从服务中访问我的活动的 ViewModel?

访问 Recycler´s Adapter 中的 ViewModel