У меня есть ListBox с RadioButton внутри того же GroupName.
Вроде так:
<ListBox x:Name="AnswerListBox" DataContext="{Binding .}" ItemsSource="{Binding Answers}" Width="auto" HorizontalAlignment="Center" >
<ListBox.ItemTemplate>
<DataTemplate>
<local:spriteToggleButton DataContext="{Binding .}" HorizontalAlignment="Center" Text="{Binding text}" Selected="{Binding selected}" Sprites="{Binding Path=DataContext.UISprites, ElementName=questionField}" IsChecked="{Binding selected, Mode=TwoWay}" GroupName="{Binding Path=DataContext.QuestionTitle, ElementName=questionField}" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Когда я нажимаю на RadioButton, он отменяет выбор другого в этой группе, это нормально.
Но когда я проведу пальцем вниз по списку, он выберет более одной кнопки RadioButton, что является нежелательным поведением.
Может быть несколько способов изменить это поведение.
Мне не нужно прокручивать список вверх и вниз, поскольку я покажу только столько элементов, сколько уместится на экране. так что, возможно, такое поведение можно отключить.
Возможно, обратный вызов может произойти при прокрутке ListBox, и что-то может отключить выделение при перетаскивании.
DataContext для списка имеет List <>, поэтому есть способ изменить установщик моей переменной Selected в моем List <>, чтобы он сбрасывал другие значения в этом списке.