【问题标题】:Adding Items to a listBox in a Windows Forms Application,将项目添加到 Windows 窗体应用程序中的列表框,
【发布时间】:2017-02-10 14:23:45
【问题描述】:

如果您单击按钮perfomed,我如何将两个textBoxesradioButton(有两个但只能检查一个)中的项目添加到listbox

这是我的代码:

            listBox1.Items.Clear();
            for (int i = 1; i < listBox1.Items.Count; i++)
            {
                if (textBox1.Text == listBox1.Items[i].ToString())
                {
                    equal1 = true;
                }
                else
                {
                    equal1 = false;
                    break;
                }

            }
            if (equal1 == false)
            {
                listBox1.Items.Add(textBox1.Text);
            }
            for (int i = 1; i < listBox1.Items.Count; i++)
            {
                if (textBox2.Text == listBox1.Items[i].ToString())
                {
                    equal2 = true;
                }
                else
                {
                    equal2 = false;
                    break;
                }
            }
            if (equal2 == false)
            {
                listBox1.Items.Add(textBox2.Text);
            }
            if (radioButton1.Checked == true)
        {
            listBox1.Items.Add("Male");
        }
        else if (radioButton2.Checked == true)    
        {
            listBox1.Items.Add("Female");
        }

我希望添加这些项目,它们之间没有空格,因为这是我得到的:

【问题讨论】:

    标签: c# winforms listbox


    【解决方案1】:

    嗯,看起来您首先添加了名称 TextBox 中的值,然后添加了出生日期 TextBox 中的值。由于此处的出生日期为空,您将在 ListBox 上获得一个空字符串(因此是一个空行)。

    如果您不想添加空值,则应在调用 Add 方法之前检查它们:

    if (equal2 == false && !string.IsNullOrEmpty(textBox2.Text)
    {
        listBox1.Items.Add(textBox2.Text);
    }
    

    但是,您正在做的事情似乎并不直接。我建议您重新考虑检查值和处理它们的方式。

    【讨论】:

      【解决方案2】:

      从您的屏幕上看,您的出生日期文本框似乎是空白或包含空格。也许这可能是问题所在?

      无论如何,这个问题应该很容易通过调试解决。在每个 listbox1.Items.Add 函数调用处放置一个断点并检查要添加到列表框中的值。

      【讨论】:

        【解决方案3】:

        是的,这正是我所做的 :) 我的代码现在看起来像这样:

        private void button1_Click(object sender, EventArgs e)
            {
        
                listBox1.Items.Clear();
        
                if(! String.IsNullOrEmpty(textBox1.Text))
                {
                    listBox1.Items.Add(textBox1.Text);
                }
                if(! String.IsNullOrEmpty(textBox2.Text))
                {
                    listBox1.Items.Add(textBox2.Text);
                }
        
                if (radioButton1.Checked == true)
                {
                    listBox1.Items.Add("Male");
                }
                else if (radioButton2.Checked == true)
        
                {
                    listBox1.Items.Add("Female");
                }
        
        
            }
        

        【讨论】:

          猜你喜欢
          • 2020-07-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-10-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多