0
我試圖使複選框綁定到我的ViewModel類的子類(沒有太多運氣)。如何將IsChecked綁定到ViewModel子類
在我的ViewModel類...
public class TestClass
{
private bool _TestValue;
public bool TestValue
{
get { return _TestValue; }
set
{
_TestValue = value;
System.Windows.MessageBox.Show("TestValue = " + _TestValue);
}
}
}
public TestClass TC;
在我的視圖模型構造...
TC = new TestClass();
TC.TestValue = false;
在我看來......
<CheckBox IsChecked="{Binding Path=TC.TestValue, Mode=TwoWay}">Option 1</CheckBox>
我的期望是,當我切換複選框,我應該看到彈出的窗口說「TestValue = True」或「TestValue = False」,但是這不會發生。我錯過了什麼?
這不是推薦的方法來實現這樣的事情。您應該將'INotifyPropertyChanged'實現爲'TestClass',然後在ViewModel中處理該事件。 引發MessageBox的代碼將在此處理程序中 –
正如@AgustinMeriles所說,實現'INotifyPropertyChanged'接口。查找適當的mvvm教程。網上有噸。你只需要對現有的'TestClass'進行細微的修改。 Btw AFAIK,'System.Windows.MessageBox'在WPF中不起作用。我記得我們曾經爲此實現了我們自己的對話框控件。 –
@Ephraim你是什麼意思'System.Windows.MessageBox'在WPF中不起作用?它工作正常,我曾多次用於測試目的。 – Maxim