如何清除“组合框”中的内容?在我提交表格之后

本文关键字:之后 表格 提交 清除 何清除 组合框 组合 | 更新日期: 2023-09-27 18:02:08

我正在尝试在c#中清除提交数据后的Windows窗体的内容。

我已经设法使用以下代码为文本框做到这一点:

foreach (Control c in Controls)
{
    if (c is TextBox)
    {
        c.Text = "";

然而,我正在努力完成表单内的"组合框"的相同任务。我试图使用代码的变化如下,但这似乎不工作。

if (c is ComboBox)
{
    c.Text = "";

完整代码如下:

 foreach (Control c in Controls)
 {
     if (c is TextBox)
     {
         c.Text = "";
     }
     if (c is ComboBox)
     {
         c.Text = "";
     }

谁能建议一个解决方案,我错过了什么?

亲切的问候伊恩

如何清除“组合框”中的内容?在我提交表格之后

Try

if (c is ComboBox)
{
    c.Items.Clear();
}

你的代码是这样的:

//your submission of the form code here...
foreach (Control c in this.Controls)
{
    if (c is TextBox)
    {                    
        ((TextBox)c).Clear();
        //c.Text = String.Empty;
    }
    if (c is ComboBox)
    {
        ((ComboBox)c).Items.Clear();
    }
} 

例如,你想清除所有的文本框,你可以这样做

YourForm.Controls.OfType<TextBox>().ToList().ForEach(textBox => textBox.Clear());

对于ComboBox你可以做同样的事情

YourForm.Controls.OfType<ComboBox>().ToList().ForEach(comboBox => comboBox.Items.Clear());