在 WPF 数据网格中只允许选中一个单选按钮

Allow only one radio button to be checked in a WPF datagird

我的数据网格绑定到一个可观察的集合,数据网格有两列 - 一列用于单选按钮,另一列用于显示名称。 目前,我可以在数据网格上制作多个 select 离子,但我的要求是一次只 select 一个单选按钮,这样 selected 单选按钮应该通知关于 selected 用户名的视图模型。 我怎样才能实现它?

这是我尝试过的:

<DataGrid Width="{Binding ActualWidth, ElementName=panel}" 
                              ItemsSource="{Binding obvUsers}"                           
                              Height="390" >                                                                                                                                                                        
                        <DataGrid.Columns>                            
                            <DataGridTemplateColumn Header="" Width="100">
                                <DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <RadioButton IsChecked="{Binding IsUserSelected}"                                    
                                    </DataTemplate>
                                </DataGridTemplateColumn.CellTemplate>
                            </DataGridTemplateColumn>
                            <DataGridTemplateColumn Header="Name">
                                <DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <TextBlock Text="{Binding UserName}" />
                                    </DataTemplate>
                                </DataGridTemplateColumn.CellTemplate>
                            </DataGridTemplateColumn>                
                        </DataGrid.Columns>                       
                    </DataGrid>

只需为您的 RadioButton 输入 GroupNameDataGrid 中的所有 RadioButton 都应该有一个选择,因为他们有相同的组。 这对我有用。

<DataGridTemplateColumn Header="" Width="100">
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <RadioButton GroupName="abc" IsChecked="{Binding IsUserSelected}">
            </RadioButton>                                    
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>