我正在使用.NET Framework 4.5,并在网格中使用多个RadioButton控件时观察到一些奇怪的行为。我希望能够分别选择和取消选择每个RadioButton,因为我没有使用GroupName属性将RadioButton绑定(bind)在一起。但是,我一次只能选择一个RadioButton。如何抑制这种行为?这是一个最小的示例:

    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto"/>
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>

        <RadioButton Grid.Row="0" Grid.Column="0" ></RadioButton>
        <RadioButton Grid.Row="1" Grid.Column="0" ></RadioButton>
        <RadioButton Grid.Row="2" Grid.Column="0" ></RadioButton>
    </Grid>

最佳答案

从技术上讲,这是预期的行为,但不是您可能认为的那样。 GroupName是一个仅期望string的属性,实际上默认为string.Empty""。实际上,该组有一个值,只是一个空字符串,WPF将它们作为同一组的一部分进行处理。从Microsoft:



https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.radiobutton.groupname(v=vs.110).aspx

附言复选框不适用于这种情况吗?

关于c# - WPF单选按钮显示错误的组绑定(bind)行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38535722/

10-11 08:18