C# INotifyPropertyChanged未通知datatrigger
我在windowA中有一个按钮,可以打开windowB并改变样式以显示windowB已打开。当我关闭窗口B时,我想重新更改按钮样式。两个窗口使用相同的视图模型 在视图模型中,我使用INotifyPropertyChanged检测属性IsWindowBOpen,并使用它更改按钮样式,如下所示:C# INotifyPropertyChanged未通知datatrigger,c#,wpf,C#,Wpf,我在windowA中有一个按钮,可以打开windowB并改变样式以显示windowB已打开。当我关闭窗口B时,我想重新更改按钮样式。两个窗口使用相同的视图模型 在视图模型中,我使用INotifyPropertyChanged检测属性IsWindowBOpen,并使用它更改按钮样式,如下所示: <ei:DataTrigger Binding="{Binding IsWindowBOpen}" Value="True"> <ei:GoToStateAction Target
<ei:DataTrigger Binding="{Binding IsWindowBOpen}" Value="True">
<ei:GoToStateAction TargetName="myButton" StateName="IsOpen"/>
</ei:DataTrigger>
<ei:DataTrigger Binding="{Binding IsWindowBOpen}" Value="False">
<ei:GoToStateAction TargetName="myButton" StateName="IsClose"/>
</ei:DataTrigger>
准备行刑队:(
在创建windowB并将其绑定到“相同”视图模型时,我正在实例化一个新实例
public WindowBView()
{
InitializeComponent();
DataContext = new WindowABViewModel();
}
而不是使用现有的
我为浪费大家的时间而道歉。请向心脏开一枪。准备行刑队:(
在创建windowB并将其绑定到“相同”视图模型时,我正在实例化一个新实例
public WindowBView()
{
InitializeComponent();
DataContext = new WindowABViewModel();
}
而不是使用现有的
我很抱歉浪费了大家的时间。请一枪打到心上。可能的拼写错误。请检查,SateName“IsClose”是一个有效的名称。是的,是示例语法,但我检查了,它是正确的。请提供处理WindowB关闭的代码。可能的拼写错误。请检查,SateName是否正确“是的"是一个有效的名称。是的,是示例语法,但我已经检查过了,它是正确的。您能提供处理WindowB关闭的代码吗?这很有趣,因为模式窗口的技巧是MVVM的一个弱点。当您的代码出现奇怪的错误时,这意味着您正在做一些愚蠢的事情。这很有趣,因为模式窗口的技巧是MVVM的一个弱点模态窗口是MVVM的一个弱点。当代码出现异常错误时,意味着你在做一些愚蠢的事情。