向ComboBox项添加自定义文本和值
在C# WinForms应用程序中,您可能需要使用包含易于理解的文本和附加关联值的项填充您的ComboBox。虽然许多解决方案依赖于数据绑定,但在某些情况下,绑定源可能不可用。
在这种情况下,您可以利用自定义类的功能来实现所需的功能。考虑以下类:
<code class="language-csharp">public class ComboboxItem { public string Text { get; set; } public object Value { get; set; } public override string ToString() { return Text; } }</code>
此类定义了两个属性:用于显示值的Text和用于保存关联值的Value。通过重写ToString()方法,我们确保在将ComboboxItem转换为字符串时返回Text属性。
要使用此类,只需创建实例并将其添加到您的ComboBox中,如下所示:
<code class="language-csharp">private void Test() { ComboboxItem item = new ComboboxItem(); item.Text = "Item text1"; item.Value = 12; comboBox1.Items.Add(item); comboBox1.SelectedIndex = 0; MessageBox.Show((comboBox1.SelectedItem as ComboboxItem).Value.ToString()); }</code>
在此示例中,我们创建一个ComboboxItem实例,分配其Text和Value属性,并将其添加到ComboBox的Items集合中。通过将SelectedIndex设置为0,我们选择新添加的项。选择该项时,我们将检索并显示其Value属性。
以上是如何在 C# 中将自定义文本和值对添加到 WinForms 组合框?的详细内容。更多信息请关注PHP中文网其他相关文章!