Кто-то, пожалуйста, помогите. У меня интересная проблема. Я пытаюсь реализовать приложение MVVM, и я хочу привязать его к радиобарабанам.
Здесь мой взгляд:
<StackPanel Orientation="Horizontal" Grid.ColumnSpan="2" >
<RadioButton GroupName="1" IsChecked="{Binding Path=NoteGeneral, Mode=TwoWay}">General</RadioButton>
<RadioButton GroupName="1" IsChecked="{Binding Path=NoteContact, Mode=TwoWay}" >Contact</RadioButton>
<RadioButton GroupName="1" IsChecked="{Binding Path=NoteAddress, Mode=TwoWay}" >Address</RadioButton>
<RadioButton GroupName="1" IsChecked="{Binding Path=NotePhone, Mode=TwoWay}" >Phone</RadioButton>
</StackPanel>
Здесь моя ViewModel:
bool _NoteGeneral;
public bool NoteGeneral
{
get { return _NoteGeneral; }
set
{
_NoteGeneral = value;
OnPropertyChanged("NoteGeneral");
}
}
bool _NoteContact;
public bool NoteContact
{
get { return _NoteContact; }
set
{
_NoteContact = value;
OnPropertyChanged("NoteContact");
}
}
bool _NoteAddress;
public bool NoteAddress
{
get { return _NoteAddress; }
set
{
_NoteAddress = value;
OnPropertyChanged("NoteAddress");
}
}
bool _NotePhone;
public bool NotePhone
{
get { return _NotePhone; }
set
{
_NotePhone = value;
OnPropertyChanged("NotePhone");
}
}
Проблема в том, что, когда я нажимаю на различные радиокнопки, средство настройки свойств вызывается только в первый раз (когда я запускаю отладку). например Когда я нажимаю NoteGeneral, NoteContact, то NoteGeneral снова только первые два клика обновляют мою модель просмотра. Я думаю, что у меня может быть что-то не так с моей привязкой, или, может быть, я подхожу к этому совершенно неправильно.
Может ли кто-нибудь помочь?
Как мне выполнить выбор радиобутов в моей модели просмотра?
.NET 4 и более поздние версии
Эта проблема с привязкой RadioButton была разрешена Microsoft при выпуске .NET 4. Связывание RadioButtons теперь работает так, как вы ожидали бы, без каких-либо обходов, перечисленных ниже.