c# - 有没有办法说如果所有条件都为真,否则

标签 c# winforms

Windows 窗体:有没有办法说如果以下所有条件都为真则“执行此操作”,否则“执行此操作”?我的表单有多个文本框,至少其中一个需要输入内容。我下面的代码检查空文本框,但如果任何文本框为空,则它会将条件设置为 false。

private void cmdEnter_Click(object sender, EventArgs e)
{
    bool allempty = true;
    foreach (Control d in Controls)
    {
        if (d is TextBox)
        { 
            TextBox textbox = d as TextBox;
            if (textbox.Text == string.Empty)
            {
                allempty = false; 
            }
        }
    }
    if (allempty == false)
    {
        MessageBox.Show("Textboxes are all empty");
    }
    else
    {
        //Data entry code
        MessageBox.Show("Entry Added");
    }
}

最佳答案

在 .NET 3.5 或更高版本中,您可以使用 linq 并执行如下操作:

    private void cmdEnter_Click(object sender, EventArgs e)
    {
        if (Controls.OfType<TextBox>().All(tb => String.IsNullOrEmpty(tb.Text)))
        {
            MessageBox.Show("Textboxes are all empty");
        }
        else
        {
            MessageBox.Show("Entry Added");
        }
    }

关于c# - 有没有办法说如果所有条件都为真,否则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15257361/

相关文章:

c# - 使用 C# 在 ASP.Net 中处理大量文件时出现 ERR_EMPTY_RESPONSE

c# - XAML 中带有黑色边框的白色字体

c# - 通过引用列名查找列索引?

c# - 根据每个哈希表中的键对哈希表的 ArrayList 进行排序

c# - 如何在 C# 中为我的应用程序提供等效的 Excel-VBA 环境

c# - 验证字符串是否对 IP 地址有效

c# - 在C#Windows窗体上处理多个按键事件

c# - WinForms 中的 RX 和 Model-View-Presenter

c# - 公开按钮控件的 OnClick 事件的自定义控件

c# - 何时删除 C# 中的定时器事件处理程序?