Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在MVVM中使用单选按钮属性_C#_Wpf_Mvvm_Radio Button - Fatal编程技术网

C# 在MVVM中使用单选按钮属性

C# 在MVVM中使用单选按钮属性,c#,wpf,mvvm,radio-button,C#,Wpf,Mvvm,Radio Button,在我的程序中,我有一个ViewModel,它改变了两个不同模型中的数据。它通过代理属性radioButton。我研究了MVVM中的radioButton命令,我知道它们与其他控件不同 调试这些代理属性时,我看到的情况是,每当选择radioButton时,程序都会运行最后选择的radioButton的命令。为什么会发生这种情况,我如何修复它 这是我的radioButton代理属性之一的示例,该属性执行许多操作: public bool myRadioButton { get { re

在我的程序中,我有一个ViewModel,它改变了两个不同模型中的数据。它通过代理属性
radioButton
。我研究了MVVM中的
radioButton
命令,我知道它们与其他控件不同

调试这些代理属性时,我看到的情况是,每当选择
radioButton
时,程序都会运行最后选择的
radioButton
的命令。为什么会发生这种情况,我如何修复它

这是我的
radioButton
代理属性之一的示例,该属性执行许多操作:

public bool myRadioButton
{
       get { return modelA.myRadioButton; }
       set
       {
           modelA.myRadioButton = value;
           NotifyPropertyChange(() => myRadioButton);

           modelA.checkBox1 = !value;
           modelA.checkBox2 = !value;
           viewModelB.modelB.label1Visibility = !value;
           viewModelB.modelB.label2Visibility = !value;
       }
}

谢谢。

我从中实现了
radiobuttonnextend
。这个解决方案非常适合这个问题。

很难理解,你的问题是什么。你能发布一个代码示例吗?问题已经更新了,想象一下有两个单选按钮:R1和R2。R1处于选定状态,R2不处于选定状态。您单击R1,它将触发一个事件,因为它的状态从选中变为未选中。由于R2的状态也发生了变化,它将触发一个从未选择到已选择的事件。但我想第一个被抓住的事件将是R1。