如果组合框文本为空,则不要完成操作c#

本文关键字:操作 组合 文本 如果 | 更新日期: 2023-09-27 18:12:56

我有一个问题,我的代码不工作,当我试图停止代码时,comboBox索引没有被用户更改

    private void button3_Click(object sender, EventArgs e)
    {
      {
            if (comboBox2.SelectedIndex == null)
            {
                MessageBox.Show("Please complete the fields");
                return;
            }
        }
        {
            if (comboBox6.SelectedIndex == null)
            {
                MessageBox.Show("Please complete the fields");
                return;
            }
        }
        {
            pictureBox2.Image = Soccer_Studio.Properties.Resources.Default;
        }
        {
            if (comboBox6.SelectedIndex == 0)
            {
                Bitmap bmp = new Bitmap(pictureBox2.Image);
                Graphics g = Graphics.FromImage(bmp);
                Image newImage = Image.FromFile(@"Database'Logos'Competitions'BPL.png");
                RectangleF rect = new RectangleF(610.0F, 17.0F, newImage.Width, newImage.Height);
                g.DrawImage(newImage, rect);
                g.Flush();
                pictureBox2.Image = bmp;
            }
        }
     }

我的应用程序是关于当一个特定的索引被选中…画一个具体的图像如果组合框是空的…显示显示(请填写字段)

如果组合框文本为空,则不要完成操作c#

的消息框

属性SelectedIndex是一个int,所以下面的语句总是 false,并且其中的代码将永远不会执行:

if (comboBox2.SelectedIndex == null)

相反,检查值-1:

if (comboBox2.SelectedIndex == -1)

作为旁注,由于您的标题指的是ComboBox文本,您还可以检查Text属性:

if (String.IsNullOrEmpty(comboBox2.Text))

否则我会这样做的。

public Form1()
        {
          InitializeComponent();
            comboBox1.Items.Add("Please select an Item");
            comboBox1.Items.Add("Item1");
            comboBox1.Items.Add("Item2");
            comboBox1.Items.Add("Item3");
            comboBox1.Items.Add("Item4");
            comboBox1.SelectedIndex= 0;
        }

,然后如果SelectedIndex == 0拒绝....

我想到了那些愚蠢的用户:)