C# 尝试使用单选按钮启用组合框时出现了什么问题?

C# 尝试使用单选按钮启用组合框时出现了什么问题?,c#,wpf,combobox,radio-button,C#,Wpf,Combobox,Radio Button,我正在尝试使用单选按钮启用组合框,尽管if语句中有一个错误,表示我无法添加。已选中或。已选中。据我所知,默认情况下,不需要尚未添加到类中的名称空间 我尝试过完全复制在线教程,但仍然出现相同的错误,甚至出现更多错误 <Grid> <ComboBox x:Name="comboBox" HorizontalAlignment="Left" Margin="354,186,0,0" VerticalAlignment="Top" Width="120"/> &l

我正在尝试使用单选按钮启用组合框,尽管if语句中有一个错误,表示我无法添加
。已选中
。已选中
。据我所知,默认情况下,不需要尚未添加到类中的名称空间

我尝试过完全复制在线教程,但仍然出现相同的错误,甚至出现更多错误

<Grid>
    <ComboBox x:Name="comboBox" HorizontalAlignment="Left" Margin="354,186,0,0" VerticalAlignment="Top" Width="120"/>
    <RadioButton x:Name="rdoEnable" Content="Enable" HorizontalAlignment="Left" Margin="293,143,0,0" VerticalAlignment="Top"/>
    <RadioButton x:Name="rdoDisable" Content="Disable" HorizontalAlignment="Left" Margin="471,143,0,0" VerticalAlignment="Top"/>
</Grid>

名称空间RadioButtonTest
{
/// 
///MainWindow.xaml的交互逻辑
/// 
公共部分类主窗口:窗口
{
公共主窗口()
{
初始化组件();
字符串[]数组=新字符串[]{“一”、“二”、“三”};
foreach(数组中的字符串编号)
{
comboBox.Items.Add(数字);
}
rdoEnable.Checked=true;
}
已选中private void RdoEnable_(对象发送方,路由目标)
{
if(rdoDisable.Checked)
{
comboBox.Enabled=false;
}
其他的
{
comboBox.Enabled=true;
}
}
}
}
我已经发布了一些例子,如果有帮助的话,我会尽力去解释。
单选按钮。选中的
是一个事件,您不能将布尔值分配给它,只能附加事件处理程序(方法,在引发事件时将调用该方法)

RadioButton.IsChecked
是一个提供当前状态的属性。它有
Nullable
类型,所以条件应该在表单中

if (rdoDisable.IsChecked == true) {} else {}
或者很简单:

comboBox.IsEnabled = (rdoDisable.IsChecked == true);

使用
IsChecked
IsEbnabled
而不是
Checked
Enabled
嗨,我尝试了你建议的方法,修复了错误,程序可以运行,但当我选择disable Radio按钮时,程序没有禁用组合框。你能检查一下我是否完成了你所建议的是正确的,我已经发布了一个代码的图像和在imgur上运行的程序@Steve,
RdoEnable_已选中
方法未连接到事件。使其成为
comboBox.IsEnabled = (rdoDisable.IsChecked == true);