Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 组合框if语句_C#_Combobox_Visual C# Express 2010 - Fatal编程技术网

C# 组合框if语句

C# 组合框if语句,c#,combobox,visual-c#-express-2010,C#,Combobox,Visual C# Express 2010,我这里的组合框有问题。我做的是制作一个组合框,使用comboBox1.items.Add(“某物”)添加项目。现在我在下面做了一个文本框,我需要的是,当我从组合框中选择某个内容时,文本框会根据组合框中的选定项进行更改。我想它能做的是 if(comboBox1.SelectedItem.ToString() == "Something") { textBox1.Text = "Something"; } 但由于某种原因,它不起作用,我在没有使用ToString()的情况下尝试了这两种方法

我这里的组合框有问题。我做的是制作一个组合框,使用
comboBox1.items.Add(“某物”)添加项目。现在我在下面做了一个文本框,我需要的是,当我从组合框中选择某个内容时,文本框会根据组合框中的选定项进行更改。我想它能做的是

if(comboBox1.SelectedItem.ToString() == "Something")
{
    textBox1.Text = "Something";
}
但由于某种原因,它不起作用,我在没有使用ToString()的情况下尝试了这两种方法,但仍然不起作用。

尝试使用:
comboBox1.选择文本

if(comboBox1.SelectedText == "Something")
{
      textBox1.Text = "Something";
}

将代码放入
组合框1\u SelectedIndexChanged
事件

if(comboBox1.SelectedItem.Value.ToString() == "Something")
{
    textBox1.Text = "Something";
}
else
{
    textBox1.Text = "";
}
或者是一个一致的版本

textBox1.Text = 
comboBox1.SelectedItem.Value.ToString() == "Something" ? "Something" :"";
试试这个

 private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (comboBox1.SelectedItem.ToString() == "Something")
            {
                textBox1.Text = "Something";
            }
        }

双击组合框,它将为您生成事件(默认情况下,
SelectedIndexChanged
将代码放入生成的事件中。当您更改combobox选定值时,您可以看到文本框值相应地更改

如果您需要在文本框中显示combobox的选定值,您可以在生成的事件中输入下面的代码

textBox1.Text = comboBox1.SelectedItem.ToString();

哦,我发现了问题。我把代码放在了错误的部分(在文本框上单击)部分:P

根据你的问题,我想无论

选择了什么,你都想在
文本框上显示它。那么,你为什么不使用这个:

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    textBox1.Text = comboBox1.SelectedText.ToString();
}
备选案文1:

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    if (comboBox2.SelectedItem.ToString() == "Dr")
    {
        MessageBox.Show("its dr");
    }
    else
    {
        MessageBox.Show("its cr");
    }
}
备选案文2:

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    if (comboBox2.Text == "Dr")
    {
        MessageBox.Show("its dr");
    }
    else
    {
        MessageBox.Show("its cr");
    }
}

试试这个,在InitializeComponent()中添加这个

然后在主方法中,创建此方法

private void changed(object sender, EventArgs e)
{
if(this.combobox.Text == "Something")
Textbox1.Text = "Something";
}

这是WPF、WinForm、ASP.NET吗??正确标记它调用.ToString的值是多少?是的。为了澄清,SelectedItem是一个项目,而不是一个文本。如果您将字符串添加为项目,这是正常的,SelectedItem是一个字符串,因为OP adding
comboBox1.Items.add(“某物”)试试这个:private void comboBox1_SelectedIndexChanged(object sender,EventArgs e){if(comboBox1.Text==“something”){textBox1.Text=“something”;}}我确实使用了与以前相同的代码,但是在ComboBox SelectedIndexChange下,它工作了,我在textBox1_Click EVENT处理程序下键入
private void InitializeComponent()
{
//
// combobox
//
this.combobox.SelectedIndexChanged += new System.EventHandler(this.changed);
}
private void changed(object sender, EventArgs e)
{
if(this.combobox.Text == "Something")
Textbox1.Text = "Something";
}