无需绑定源即可自定义 ComboBox 项目
在 C# WinApp 中使用 ComboBox 时,向其项目添加文本和值的典型方法涉及绑定到数据源。但是,如果您没有现成的绑定源,则需要其他解决方案。
解决方案:重写 ToString() 方法的自定义类
为了克服此限制,请创建一个自定义类,该类同时包含文本和值属性。重写 ToString() 方法以返回所需的文本。这是一个此类类的示例:
<code class="language-c#">public class ComboboxItem { public string Text { get; set; } public object Value { get; set; } public override string ToString() { return Text; } }</code>
使用方法:
定义自定义类后,您可以创建实例并将它们添加到 ComboBox:
<code class="language-c#">private void Test() { ComboboxItem item = new ComboboxItem(); item.Text = "项目文本1"; item.Value = 12; comboBox1.Items.Add(item); }</code>
检索值:
要检索所选项目的底层值,请将其强制转换为自定义类并访问 Value 属性:
<code class="language-c#">MessageBox.Show((comboBox1.SelectedItem as ComboboxItem).Value.ToString());</code>
这种自定义方法允许您使用与其实际值不同的特定文本填充 ComboBox,在没有专用数据源的情况下管理项目时提供更大的灵活性。
以上是如何在没有绑定源的情况下将自定义文本和值添加到 C# WinForms ComboBox?的详细内容。更多信息请关注PHP中文网其他相关文章!