C# - 将值添加到字符串数组中,除非它们是NULL

Raw*_*wns 3 c# arrays combobox winforms

我正在ComboBox使用从"配置"形式的四个文本框中获取的值列表填充.代码有效,但我遇到的问题是这些文本框中的某些文本框是空白的.如果任何文本框为空,那么我的ComboBox列表中有空格.我的代码:

comboFms.Items.Clear();
string[] fmsDB = new string[] { "Select FMS Database", fms1, fms2, fms3, fms4 };
comboFms.Items.AddRange(fmsDB);
this.cboFms.Text = "Select FMS Database";
this.cboFms.Enabled = true;
Run Code Online (Sandbox Code Playgroud)

在此示例中,仅fms1具有值.这导致下拉列表显示如下:

截图

有什么办法可以从字符串数组或ComboBox中排除空白值吗?

Jer*_*gen 13

您可以替换为comboFms.Items.AddRange(fmsDB);:

Using System.Linq;

...

comboFms.Items.AddRange(fmsDB.Where(s => !string.IsNullOrEmpty(s)).ToArray());
Run Code Online (Sandbox Code Playgroud)

  • @Rawns将`使用System.Linq;`添加到文件的顶部 (2认同)