C # Показать MessageBox на основе Combobox SelectedText - PullRequest
0 голосов
/ 26 апреля 2018

Как показать окно сообщения на основе различных SelectedText в Combobox?В настоящее время он просто возвращает значение NULL при запуске.

Мне нужно показать конкретное окно сообщения для каждого текста в поле со списком, поскольку, как только я смогу это сделать, в зависимости от SelectedText будут использоваться разные SQL-соединения и запускаться запросы.

Я включил свой код ниже.После некоторых исследований кажется, что элемент управления SelectedText всегда будет возвращать нулевое значение, так как теряет фокус.Как мне обойти это?

private void button2_Click(object sender, EventArgs e)
    {
       if(comboSelectServer.SelectedText == "SERV1")
        {
            MessageBox.Show("SERV1");
        }
       else if(comboSelectServer.SelectedText == "SERV2")
        {
            MessageBox.Show("SERV2");
        }
       else if(comboSelectServer.SelectedText == "SERV3")
        {
            MessageBox.Show("SERV3");
        }
    }

Ответы [ 3 ]

0 голосов
/ 26 апреля 2018

Попробуйте это.

if (comboSelectServer.Text == "SERV1")
{
    MessageBox.Show("SERV1");
}
else if (comboSelectServer.Text == "SERV2")
{
    MessageBox.Show("SERV2");
}
else if (comboSelectServer.Text == "SERV3")
{
    MessageBox.Show("SERV3");
}

Однако это проще ...

if (comboSelectServer.SelectedIndex == 0) //SERV1
{
    MessageBox.Show("SERV1");
}
else if (comboSelectServer.SelectedIndex == 1) //SERV2
{
    MessageBox.Show("SERV2");
}
else if (comboSelectServer.SelectedIndex == 2) //SERV3
{
    MessageBox.Show("SERV3");
}
0 голосов
/ 27 апреля 2018

Может быть, я что-то упускаю, но почему бы просто не сделать:

private void button2_Click(object sender, EventArgs e)
{
    MessageBox.Show(comboSelectServer.SelectedItem.ToString());
}
0 голосов
/ 26 апреля 2018
Try like this

private void button2_Click(object sender, EventArgs e)
{
   if(comboSelectServer.SelectedItem.ToString()== "SERV1")
    {
        MessageBox.Show("SERV1");
    }
   else if(comboSelectServer.SelectedItem.ToString()== "SERV2")
    {
        MessageBox.Show("SERV2");
    }
   else if(comboSelectServer.SelectedItem.ToString()== "SERV3")
    {
        MessageBox.Show("SERV3");
    }
}
...