2016-02-23 10 views
0

Прямо сейчас, у меня есть DataGrid, содержащий, наряду с другими столбцами, 5 колонок, которые содержат <RadioButton>Dynamic GroupName для радиокнопок в WPF (MVVM)

Каждой строки имеет GroupName, что является «идентификатором» в таблице линии, поэтому я знаю, что это уникально.

Но я хотел бы добавить несколько строк в эту DataGrid, но, очевидно, есть не генерируемые имя_группы, что я мог бы использовать, чтобы я мог выбрать все мои радиокнопки в новой строке в то же время

Есть ли способ сделать это? Имейте в виду, что это MVVM подход

Вот визуальное представление вопроса (В радиокнопки есть стиль, что делает их невидимыми, если невыбранные и «X», если выбран) Visual representation of the issue

+0

Просто используйте код позади, то есть '' EventHandler' для Click' случае 'RadioButton' и ручка выбора там. Это не нарушит шаблон MvvM. HTH – XAMlMAX

+1

Это разрушает события MVVM, которые генерируются графическим интерфейсом, поэтому это делает его неустойчивым. Также в этом событии, как я могу установить имя группы для радиообмена, мне придется ссылаться на него, это дважды нарушает дизайн MVVM. –

+0

Не могли бы вы объяснить, как это нарушает MvvM? – XAMlMAX

ответ

1

я решил использовать GUID, который генерируется в конструкторе моего объекта и использовать это свойство назвать свойство GroupName

public string GUID { get; set; } 

public myObject() 
{ 
    GUID = Guid.NewGuid().ToString(); 
} 


<RadioButton GroupName="{Binding GUID}" />