Combox控件初始化项的技巧

有时候combox下拉项就是几条固定的,不需要做数据绑定,但是如果直接采用字符串集合编辑器的时候,SelectedValue貌似会不起作用。

于是简单的封装一下

 /// <summary>
        /// 绑定combox 按顺序填写value、member  示例:InitCombox.BindCombox(cbxStatus,"1","启用","0","禁用");
        /// </summary>
        /// <param name="box"></param>
        /// <param name="valueMember"></param>
        public static void BindCombox(ComboBox box, params string[] valueMember)
        {
            List<ComboxItem> items = new List<ComboxItem>();
            for (int i = 0; i < valueMember.Length / 2; i++)
            {
                int j = i * 2;
                items.Add(new ComboxItem { ValueMember = valueMember[j], DisplayMember = valueMember[j + 1] });
            }

            box.DataSource = items;
            box.DisplayMember = "DisplayMember";
            box.ValueMember = "ValueMember";
            box.SelectedIndex = -1;
        }

/// <summary>
        /// 绑定combox 按顺序填写value、member  示例:InitCombox.BindCombox(cbxStatus,0,"1","启用","0","禁用");
        /// </summary>
        /// <param name="box"></param>
        /// <param name="index"></param>
        /// <param name="valueMember"></param>
        public static void BindCombox(ComboBox box, int index, params string[] valueMember)
        {
            List<ComboxItem> items = new List<ComboxItem>();
            for (int i = 0; i < valueMember.Length / 2; i++)
            {
                int j = i * 2;
                items.Add(new ComboxItem { ValueMember = valueMember[j], DisplayMember = valueMember[j + 1] });
            }

            box.DataSource = items;
            box.DisplayMember = "DisplayMember";
            box.ValueMember = "ValueMember";
            box.SelectedIndex = index;
        }

构造自定义ComboxItem项

 public class ComboxItem
    {
        public string DisplayMember { get; set; }
        public string ValueMember { get; set; }
    }

使用的时候还是蛮方便的

 InitCombox.BindCombox(cbxSFKS, 0, "0", "未空驶", "1", "空驶");
时间: 2024-12-28 06:10:14

Combox控件初始化项的技巧的相关文章

win32 sdk树形控件的项拖拽实现

本课中,我们将学习如何使用树型视图控件.另外还要学习如何在树型视图中完成拖-拉动作,以及如何使用图象列表. 理论: 树型视图是一种特别的窗口,我们可以使用它一目了然地表示某种层次关系.譬如象在资源管理器中左边窗口中的就是树型视图.您可以调用CreateWindowEx来创建树型视图,传递一个类名""SysTreeView32"",或者您也可以把它放到一个对话框中去.不要忘了在您的代码中加入InitCommonControls函数. 树型视图有几种特有的风格.下面是几

UI控件初始化问题:initWithFrame和initWithCoder、aweakFromNib的执行

在iOS学习和程序开发过程中,我们经常会遇到一些自定义UI控件或控制器在初始化时出现问题,尤其在大家刚开始接触时,几种初始化方法的作用以及调用的时机往往容易混淆,这也跟我们对iOS程序设计中,类的创建和实例化的过程了解不透彻有关系.本文用一些小例子来简单梳理一下几者的关系,后面再陆续讨论一些复杂情况的深入对比. 问题: 一.什么时候用initWithFrame,什么时候用aweakFromNib.initWithCoder 二.在初始化时控件自身的frame何时能获得?layoutSubView

WinForm 清空界面控件值的小技巧

原文:WinForm 清空界面控件值的小技巧 在WinForm里面有时候需要清空自己输入内容或是选择的选项,以便重新操作流程,那么一般你是怎么清空界面各个控件值的呢?如果窗体里面控件,尤其是TextBox控件比较多的时候,代码里面是不是要设置每个控件的Text属性值为空呢?下面我用这个例子,来探讨下清空界面控件值的小技巧.而且还能复用.不必每个窗体都做这些枯燥.无聊的工作. 一般的做法是在清除控件的事件里面添加下面这样的代码: 代码 private void btnClear_Click(obj

[转]如何在数据绑定时不让combox控件触发SelectedIndexChanged事件

this.cboVendor.SelectedIndexChanged -= new System.EventHandler(this.cboVendor_SelectedIndexChanged); cboVendor.DataSource = myClass.RunQueryCmd(strSqlCmd); cboVendor.DisplayMember = "SupplierCode"; //添加事件 this.cboVendor.SelectedIndexChanged += n

MFC学习之EDIT控件初始化

//四种方法为EDIT控件初始化     //调用系统API     HWND hEidt = ::GetDlgItem(m_hWnd,IDC_EDIT1);     ::SetWindowText(hEidt,L"0.");     //调用类成员函数     GetDlgItem(IDC_EDIT1)->SetWindowText(L"0.");     //设置控件的数值类变量     m_edit_cs = L"0.";     U

silverlight 控件初始化和布局

https://msdn.microsoft.com/zh-cn/library/dd351483(v=vs.95).aspx 控件初始化和布局 Silverlight 当您创建控件时,务必了解初始化和布局事件和方法的顺序. 这样,您就知道用于改写的正确方法或要处理的正确事件以获得特定的效果. 通常,可以构造 Silverlight 控件并设置其属性:接着创建其可视化表示形式或可视化树:然后该控件经历整个布局过程. 下表列出了在控件创建和布局期间所设置的属性以及发生的事件和方法. 属性.方法和事

实战基础技能(07)--------DEV控件的Gridview小技巧总结

1.设置Gridview控件的某列不可编辑 this.gridData.gridView1.Columns["change_date"].OptionsColumn.AllowEdit = false; 字段:change_date是数据库中字段,是绑定到gridview上的. 2.设置Gridview控件整体不可编辑 this.gridData.IsEnableEdit = false; 3.设置Gridview控件,列头不可排序 this.gridDataDetail.gridVi

Combox控件的认识

1.CComboBoxUI这个函数里面的内容还没学着用. 这里主要学习CComboUI 1.该函数继承CContainerUI是因为该函数会包含下拉列表的控件 2.该函数同时继承了IListOwnerUI 接口,是因为列表控件们在回掉的时候存储的是IListOwnerUI指针 3.该函数有一个CComboWnd* m_pWindow属性.该类跟时间控件的CDateTimeWnd的功能是一模一样的.当CComboUI被点击时则会触发创建该控件,该空间则会通过(Init函数,时间控件也是通过Init

使用 IObjectSafety 标记 ATL 控件初始化的安全

MSDN原文.这里我将代码使用到了BHO里面,运行调试没问题.拿来分享一下 概要 您可以使用 IObjectSafetyImpl 的默认实现来标记为可安全执行脚本的控件.在许多情况下,您需要将标记为可安全执行初始化的控件. 注意: 如果它真正是安全只是标注为可安全执行脚本或初始化控件.如果该控件是潜在的不安全和被标记为可安全执行,您可能应承担相应责任的损害.请参阅下面的参考资源部分,有关的详细信息. 回到顶端 | 提供反馈 更多信息 如何才能获取所需的功能所需的步骤涉及到使用 IObjectSa