选择-是或否

本文关键字:选择 | 更新日期: 2023-09-27 18:00:34

我正在制作一个标记为"comboBox"的是或否comboBox。在我的yesnocomboBox的Items属性中,我将第一个项目作为Yes,将第二个项目作为No.

当我让我的用户选择"是"时,它必须显示对其他特定标签和TextBox的可见性。我该如何编码才能做到这一点?

到目前为止,我有这个,但它不起作用:

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    if(yesnocomboBox.SelectedItem = "0"){
    }
}

好吧,我选择使用复选框。到目前为止,这是我针对用户选中复选框时的代码:

    private void yestochappedlipsCheckBox_CheckedChanged(object sender, EventArgs e)
    {
        if (yestochappedlipsCheckBox.Checked = chapstickbrandsListBox.Visible = true)
            (choosewhatyouwanttobuyLabel.Visible = true);

我如何使它们的可视性看起来都是真实的?

选择-是或否

private void yestochappedlipsCheckBox_CheckedChanged(object sender, EventArgs e)
{
    if (yestochappedlipsCheckBox.Checked)
     {
        chapstickbrandsListBox.Visible = true;
        choosewhatyouwanttobuyLabel.Visible = true;
     }
}

我看到你说过要切换到复选框,但用组合框做这件事很简单。我认为您在代码中使用的是赋值操作,而不是相等比较。请通过检查索引而不是项目来尝试以下操作。

此外,作为良好的编码实践,请保持括号的一致性。

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    if(yesnocomboBox.SelectedIndex == 0)
    {
        label1.Visible = true;
        otherItem.Visible = true;
        anotherItem.Visible = false;
    }
}

如果您过于认真,无法将comboBoxYesNo选项一起使用。确保设置DropDownStyle = DropDownList

bool? IsYes;
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    if (comboBox1.SelectedIndex != -1)
    {
        //IsYes = comboBox1.SelectedIndex == 0;
        choosewhatyouwanttobuyLabel.Visible = comboBox1.SelectedIndex == 0;
    }
    else
    {
        IsYes = null;
    }
}