C# 数据模板中单选按钮的两个组?
您好,我有以下问题:我有一个带有C# 数据模板中单选按钮的两个组?,c#,wpf,xaml,datatemplate,C#,Wpf,Xaml,Datatemplate,您好,我有以下问题:我有一个带有RadioButtons的DataTemplate,我希望每个RadioButton在功能上都属于这两个组。这可能吗 所以我希望我只能单击行中的一个按钮和列中的一个按钮 目前,我可以在一列中单击一个按钮两次,但我可以单击一行中的每个按钮 我在谷歌上找不到任何有用的东西。 有人有主意吗 <GridViewColumn Width="80"> <GridViewColumn
RadioButton
s的DataTemplate
,我希望每个RadioButton
在功能上都属于这两个组。这可能吗
所以我希望我只能单击行中的一个按钮和列中的一个按钮
目前,我可以在一列中单击一个按钮两次,但我可以单击一行中的每个按钮
我在谷歌上找不到任何有用的东西。
有人有主意吗
<GridViewColumn Width="80">
<GridViewColumn.Header>
<GridViewColumnHeader>Hauptfoto</GridViewColumnHeader>
</GridViewColumn.Header>
<GridViewColumn.CellTemplate >
<DataTemplate>
<RadioButton Foreground="DarkBlue" GroupName="HauptfotoRB" x:Name="HauptfotoRB" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="25,0,0,0" Checked="HauptfotoRB_Checked"></RadioButton>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Width="80">
<GridViewColumn.Header>
<GridViewColumnHeader>Oben__1</GridViewColumnHeader>
</GridViewColumn.Header>
<GridViewColumn.CellTemplate >
<DataTemplate>
<RadioButton Foreground="DarkBlue" GroupName="ObenRB" x:Name="ObenRB" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="25,0,0,0" Checked="ObenRB_Checked" ></RadioButton>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Width="80">
<GridViewColumn.Header>
<GridViewColumnHeader>Innen__2</GridViewColumnHeader>
</GridViewColumn.Header>
<GridViewColumn.CellTemplate>
<DataTemplate>
<RadioButton Foreground="DarkBlue" GroupName="InnenRB" x:Name="InnenRB" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="25,0,0,0" Checked="InnenRB_Checked" ></RadioButton>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
豪普福托
奥本欧1
Innen_uuu2
对于数据网格
您可以使用第二个不可见的单选按钮
进行列同步,并使用替代索引
作为行同步的行索引(如果您的行数据有一个ID,当然可以使用它代替替代索引
进行行同步)并把它们绑在一起:
<DataGrid ItemsSource="{Binding YourCollection}" AutoGenerateColumns="False" AlternationCount="2147483647">
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<RadioButton GroupName="col1" IsChecked="{Binding IsChecked, ElementName=b}" Visibility="Collapsed"/>
<RadioButton Name="b"
Content="SomeContent"
GroupName="{Binding AlternationIndex, RelativeSource={RelativeSource AncestorType=DataGridRow}}"/>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<RadioButton GroupName="col2" IsChecked="{Binding IsChecked, ElementName=b}" Visibility="Collapsed"/>
<RadioButton Name="b"
Content="SomeContent"
GroupName="{Binding AlternationIndex, RelativeSource={RelativeSource AncestorType=DataGridRow}}"/>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<RadioButton GroupName="col3" IsChecked="{Binding IsChecked, ElementName=b}" Visibility="Collapsed"/>
<RadioButton Name="b"
Content="SomeContent"
GroupName="{Binding AlternationIndex, RelativeSource={RelativeSource AncestorType=DataGridRow}}"/>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>