zoukankan      html  css  js  c++  java
  • Combox默认项设置的问题及解决方案

    在开发时,对于Combox控件,我们会对Items预置一些值,同时希望显示一个默认值。Combox中没有默认index这样的选项,于是会想着在程序加载时设置Combox的SelectedIndex为一个值,比如3.这样程序启动后就会显示SelectedIndex=3的项。
    但是没一个Combox都需要这么设置,不但麻烦,而且还容易搞混、漏掉或者出错,那有没有其他的办法呢?
    当然是有的!
    在Combox中还有一个属性是Text,我们只要将这个值设置为预置项中的某一项的值,程序启动时就会默认显示这个值。
    那有人会担心,这样子设置的话,会不会是Text显示是OK了,但是SelectedIndex却不对应呢?我们可以看下面的代码和运行结果。
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace ComboxDefaultItem
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void buttonShow_Click(object sender, EventArgs e)
            {
                string info = string.Format("SelectedIndex:{0},Data:{1}",comboBox1.SelectedIndex,comboBox1.SelectedItem);
                MessageBox.Show(info);
            }
        }
    }
    



    结果证明是不会的。这是因为Combox设置了Text之后,会自动索引到对应的项中。如果设置的Text不在预置项中,那么这时的SelectedIndex是-1,也就是没有索引到对应的项。
  • 相关阅读:
    ML-线性回归
    ML-决策树
    numpy常用知识点备忘(2)
    numpy常用知识点备忘
    ML-朴素贝叶斯算法
    Git常用命令备忘
    机器学习-决策树算法
    机器学习-线性模型(线性回归与逻辑回归)
    深入JVM内核(四)垃圾回收器与GC参数
    深入JVM内核(三)对象存活判定算法与垃圾收集算法
  • 原文地址:https://www.cnblogs.com/sparkleDai/p/7605063.html
Copyright © 2011-2022 走看看