【问题标题】:how to set default value for comboBox?如何设置组合框的默认值?
【发布时间】:2014-02-15 19:00:04
【问题描述】:

嘿,我正在制作一个组合框,其中包含我系统上所有字体名称的列表,但是一开始它不包含任何值,用户需要单击它来打开它并从列表中选择一个项目.我的问题是如何为我的组合框设置默认值(例如'Arial'),以防用户没有选择任何内容并且不给出错误。

        foreach (FontFamily fnt in fonts.Families)
        {

            comboBox1.Items.Add(fnt.Name);

        }

【问题讨论】:

  • 使用comboBox1.SelectedIndex。 GIYF
  • for循环后添加if (comboBox1.Items.Count > 0 ) { comboBox1.SelectedItem = comboBox1.Items[0]; }

标签: c# combobox


【解决方案1】:

您可以使用FindString 搜索诸如“Arial”之类的值:

if (comboBox1.SelectedIndex == -1)
    comboBox1.SelectedIndex = comboBox1.FindString("Arial");

如果您有多个以“Arial”开头的条目,上面将返回第一个以 Arial 开头的匹配开始,因此您可能需要搜索确切的字符串:

if (comboBox1.SelectedIndex == -1)
    comboBox1.SelectedIndex = comboBox1.FindStringExact("Arial Rounded MT");

【讨论】:

  • 我实际上不想获得第一个值,但我只想获得“Arial”作为默认值。如果没有从组合框中选择任何内容,我想将其设置为默认值。我是否需要使用任何“if”语句来检查一个项目是否已被选中?
  • 我应该如何将值设置为“Arial”?
  • 我应该把代码放在哪里?以我的形式?还是在我的按钮中?
【解决方案2】:

你可以这样做:

comboBox1.SelectedValue = "Arial";

(假设有一个元素的 value = Arial)

【讨论】:

    猜你喜欢
    • 2017-10-03
    • 2014-02-14
    • 1970-01-01
    • 1970-01-01
    • 2013-01-13
    • 1970-01-01
    • 2016-04-29
    • 1970-01-01
    相关资源
    最近更新 更多