C# 在MVVM中挂起并恢复事件处理
在组合框中,我使用C# 在MVVM中挂起并恢复事件处理,c#,.net,wpf,xaml,mvvm,C#,.net,Wpf,Xaml,Mvvm,在组合框中,我使用ICommand通过EventTriggers在SelectionChanged事件发生时执行代码: <ComboBox ItemsSource="{Binding DataItems}" DisplayMemberPath="Name" SelectedItem="{Binding SelectedDataItem}"> <i:Interaction.Triggers> <i:EventTrigger EventName=
ICommand
通过EventTriggers
在SelectionChanged
事件发生时执行代码:
<ComboBox ItemsSource="{Binding DataItems}" DisplayMemberPath="Name" SelectedItem="{Binding SelectedDataItem}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="SelectionChanged">
<i:InvokeCommandAction Command="{Binding Command}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</ComboBox>
如何在MVVM中挂起并恢复GUI事件处理?只需输入一个标志
private bool manuallyupdateingselectedid=false
,然后在更改项目之前将其设置为true,在选择更改
中检查是否为true,然后继续执行。
private void SomeMethod()
{
//SUSPEND SelectionChanged event handling here
SelectedDataItem = new DataItem();
//RESUME SelectionChanged here
}