精华内容
下载资源
问答
  • ComboBox控件

    2014-02-17 16:12:09
    1.ComboBox下拉列表显示图片  private void comboBox1_DrawItem(object sender, DrawItemEventArgs e) { Graphics g = e.Graphics; Rectangle r = e.Bounds; Size image

    1.ComboBox下拉列表显示图片 

    private void comboBox1_DrawItem(object sender, DrawItemEventArgs e)
            {
                Graphics g = e.Graphics;
                Rectangle r = e.Bounds;
                Size imageSize = imageList1.ImageSize;
           
                if (e.Index >= 0)
                {
                    Font fn = new Font("Tahoma", 10, FontStyle.Bold);
                    string s = (string)comboBox1.Items[e.Index];
                    StringFormat sf = new StringFormat();
                    sf.Alignment = StringAlignment.Near;
                    if (e.State == (DrawItemState.NoAccelerator | DrawItemState.NoFocusRect))
                    {
                        //画条目背景 
                        e.Graphics.FillRectangle(new SolidBrush(Color.Red), r);
                        //绘制图像 
                        imageList1.Draw(e.Graphics, r.Left, r.Top, e.Index);
                        //显示字符串 
                        e.Graphics.DrawString(s, fn, new SolidBrush(Color.Black), r.Left + imageSize.Width, r.Top);
                        //显示取得焦点时的虚线框 
                        e.DrawFocusRectangle();
                    }
                    else
                    {
                        e.Graphics.FillRectangle(new SolidBrush(Color.LightBlue), r);
                        imageList1.Draw(e.Graphics, r.Left, r.Top, e.Index);
                        e.Graphics.DrawString(s, fn, new SolidBrush(Color.Black), r.Left + imageSize.Width, r.Top);
                        e.DrawFocusRectangle();
                    }
                }
    
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                comboBox1.DrawMode = DrawMode.OwnerDrawFixed;
                comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
                comboBox1.Items.Add("小车");
                comboBox1.Items.Add("视频");
                comboBox1.Items.Add("信号灯"); 
     
            }
    

    2.带查询功能的ComboBox控件

    private void button1_Click(object sender, EventArgs e)
            {
                this.comboBox1.Items.Clear();
                this.comboBox1.Items.Add("哈尔滨");
                this.comboBox1.Items.Add("大庆");
                this.comboBox1.Items.Add("长沙");
                this.comboBox1.Items.Add("武汉");
                this.comboBox1.Items.Add("上海");
                this.comboBox1.Items.Add("北京");
                this.comboBox1.Items.Add("大连");
                this.comboBox1.Items.Add("汉口");
                this.comboBox1.Items.Add("成都");
                this.comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
                this.comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems; ;
            }
    

    3.ComboBox控件里自动填充文件目录

    private void button1_Click(object sender, EventArgs e)
            {
                this.comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
                this.comboBox1.AutoCompleteSource = AutoCompleteSource.FileSystem;
            }
    

    展开全文
  • combobox控件

    2015-01-02 16:28:22
    combobox控件 有没有好点的第三方控件 可以实现过滤、多列显示等等
  • Combobox控件

    2012-04-30 08:34:19
    1. 在控件的Propertties属性中,在data面板中 ,可以添加在列表框中默认的数据   2. style面板中,默认有sort功能,如果不需要可以去掉   3. 实现带有自动查询功能的函数 :在用户输入一段文字后,自动匹配...

    1. 在控件的Propertties属性中,在data面板中 ,可以添加在列表框中默认的数据

     

    2. style面板中,默认有sort功能,如果不需要可以去掉

     

    3. 实现带有自动查询功能的函数 :在用户输入一段文字后,自动匹配符合的列表,并补全

    void CFunDlg::OnEditupdateCombo2() //combobox的消息响应函数
    {
     if(!m_Auto)
      return;
     CString str;
     m_Combo.GetWindowText(str);
     int nLength = str.GetLength();
     DWORD dwCurSel = m_Combo.GetEditSel();
     DWORD dStart = LOWORD(dwCurSel);
     DWORD dEnd = HIWORD(dwCurSel);
     if(m_Combo.SelectString(-1,str) == CB_ERR)
     {
      m_Combo.SetWindowText(str);
      if(dwCurSel != CB_ERR)
       m_Combo.SetEditSel(dStart,dEnd);
     }
     m_Combo.GetWindowText(str);
     
     if(dEnd < nLength && dwCurSel != CB_ERR)
      m_Combo.SetEditSel(dStart,dEnd);
     else
      m_Combo.SetEditSel(nLength,-1);
    }

    BOOL CFunDlg::PreTranslateMessage(MSG* pMsg)
    {
     if(pMsg->message==WM_KEYDOWN)
     {
      m_Auto = TRUE;
      int nKey = (int)pMsg->wParam;
      if(nKey == VK_DELETE || nKey == VK_BACK)
       m_Auto = FALSE;
     }
     return CDialog::PreTranslateMessage(pMsg);
    }

     

    5. 列举磁盘目录

    m_Combo.Dir(DDL_DRIVES|DDL_EXCLUSIVE,"");

     

    6. 自动调整下拉列表宽度的ComBox  

     

    HBRUSH CFunDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)  //WM_CTLCOLOR
    {
     HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

     switch(nCtlColor)
     {
     case CTLCOLOR_EDIT:
      break;
     case CTLCOLOR_LISTBOX:
      int iItemNum=m_Combo.GetCount();
      int iWidth=0;
      CString strItem;
      CClientDC dc(this);
      int iSaveDC=dc.SaveDC();
      dc.SelectObject(GetFont());
      int iVSWidth=::GetSystemMetrics(SM_CXVSCROLL);
      for(int i=0;i<iItemNum;i++)
      {
       m_Combo.GetLBText(i,strItem);
       int iWholeWidth=dc.GetTextExtent(strItem).cx+iVSWidth;
       iWidth=max(iWidth,iWholeWidth);
      }
      iWidth+=dc.GetTextExtent("a").cx;
      dc.RestoreDC(iSaveDC);
      if(iWidth>0)
      {
       CRect rc;
       pWnd->GetWindowRect(&rc);
       if(rc.Width()!=iWidth)
       {
        rc.right=rc.left+iWidth;
        pWnd->MoveWindow(&rc);
       }
      }break;
     }
     return hbr;
    }

     

     

     

    展开全文
  • ComboBox 控件和ListBox 控件在功能上很相似,很多情况下,这两个控件是可以互换使用的,但是还是有某种特定的环境下只适合使用一种控件的情况。下面通过本文给大家介绍下ComboBox 控件的用法教程,一起看看吧
  • 在VC++程序设计中,combobox控件是再普通不过的窗体元素控件了,而对于新手来说,掌握combobox 的各种用法显得尤其重要,本文就来总结一些实用的combobox控件用法,供大家参考。 一、添加/删除Combo Box内容: 1. ...
  • 主要介绍了MFC之ComboBox控件用法,包括了ComboBox控件常见的各类用法,非常具有实用价值,需要的朋友可以参考下
  • 主要介绍了WinForm中comboBox控件数据绑定实现方法,结合实例形式分析了WinForm实现comboBox控件数据绑定的常用方法与相关操作技巧,需要的朋友可以参考下
  • Winfrom的Combobox控件

    2017-08-20 13:46:33
    Winfrom的Combobox控件@()[WinForm|Combobox控件|] ComboBox控件@()[WinForm|Combobox|] Combobox控件的问题Combobox为下拉选择菜单 Combobox有三种模式为: 【DropDown】:可以编辑,也可以下拉选择 【Simple】:可以...

    Winfrom的Combobox控件

    @()[WinForm|Combobox控件|]

    ComboBox控件

    @()[WinForm|Combobox|]

    Combobox控件的问题
    Combobox为下拉选择菜单

    Combobox有三种模式为:

    • 【DropDown】:可以编辑,也可以下拉选择
    • 【Simple】:可以编辑,具体不清楚,可能通过事件可以自动补全
    • 【DropDownList】:禁止编辑只能下拉选择
      ###Combobox的数据填充
      第一:
      以控件编辑器直接写死
      第二;
      以代码方式add添加第三种动态获取【根据需求使用,例如性别就俩值男女,直接add写死】

    第一种【遍历添加】

    1
    2
    3
    4
    5
    6
    7
    1. private void DoBindData()
    2. {
    3. for (int i = 0; i < 5; i++)
    4. {
    5. comboBox1.Items.Add(i + 1);
    6. }
    7. }

    第二种进行数据源绑定:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    1. private void DoBindDataSource()
    2. {
    3. //构造数据源(或从数据库中查询)
    4. DataTable ADt = new DataTable();
    5. DataColumn ADC1 = new DataColumn("F_ID", typeof(int));
    6. DataColumn ADC2 = new DataColumn("F_Name", typeof(string));
    7. ADt.Columns.Add(ADC1);
    8. ADt.Columns.Add(ADC2);
    9. for (int i = 0; i < 3; i++)
    10. {
    11. DataRow ADR = ADt.NewRow();
    12. ADR[0] = i+1;
    13. ADR[1] = "Name_" + (i+1);
    14. ADt.Rows.Add(ADR);
    15. }
    16. //进行绑定
    17. comboBox1.DisplayMember = "F_Name";//控件显示的列名
    18. comboBox1.ValueMember = "F_ID";//控件值的列名
    19. comboBox1.DataSource = ADt;
    20. }

    第三种数据库类型的数据源绑定

    1
    2
    3
    4
    5
    6
    7
    8
    1. public void usertype()//加载用户类型
    2. {
    3. DataTable table = SqlHelper.ExecuteDataTable(书写SQL语句);
    4. cbxtype.DataSource = table;
    5. cbxtype.DisplayMember = "tb_name";//显示的值
    6. cbxtype.ValueMember = "GUID";//实际选项值
    7. this.tbxxibie.SelectedIndex = -1;//首次默认选项
    8. }

    ####Combobox的第三种模式【DropDownList】
    由于这种模式是禁止编辑的,如果查询是作为条件查询,启动程序第一次的时候没关系,但是一旦SelectedIndex了之后就无法改为空值,这样查找全部数据的时候就会出现错误,所谓为了防止这种情况的出现,我们一般都会添加一个默认值,例如:“请添加”,“请选择”,下面说一下我的思路:

    #####Combobox的item排序
    Oder by后面的case when 一个值then 数字(让前面的值第几个显示,0为第一个)else 1 end(else 后面的数字为其它的值从1开始排序到结束)

    1
    1. where tb_num=1 or tb_num=6 order by case when tb_name='---请选择---' then 0 else 1 end

    ###逻辑思路:
    即在数据库的属性添加一行唯一分组唯一值,例如:“请添加”,“请选择”

    这样我们把这个值和其他固定的类型分组的值一同填充到控件里面,就是在sql语句where后面添加一个or+这个唯一分组;

    然后我们对这个combobox控件进行判断,combobox的.Text就是显示的值,value是实际值,我就对控件进行是否为空是否为空字符串进行判断,简单的方法就是对length(长度)进行判断;

    同时或一个条件,combobox的Text值与上面的唯一值“请添加”,“请选择”进行双等号的比对,如果是双等于就让该控件为空,这样dal里面的sql语句where后面就不会添加该条件,就达到了我们想要的让它为空的目的;

    if的判断有了,当然还有一个else,else当然是让它等于选择的item了
    逻辑思路到此结束!
    例如:(我这里是做的不等于判断,也就不需要else)

    1
    2
    3
    4
    1. if ("---请选择---" != tbxruxue.Text.ToString() && null != tbxruxue.SelectedValue)
    2. {
    3. peopleModel.people_ruxue = tbxruxue.SelectedValue.ToString();
    4. }

    感谢阅读这份帮助文档。

    展开全文
  • C# WINFORM Combobox控件实现模糊查询功能,项目要用到的,自己写了个小程序实现 Combobox控件实现模糊查询功能,里面有个简单的小说明。功能比较简单。
  • C 操作ComboBox控件

    2018-11-15 10:31:05
    C 操作ComboBox控件

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

    也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                   

    ComboBox控件是一个很容易使用出错的控件,在此将常用的

    操作写下来,以备后用,也希望可以帮助到有需要的人。

    ----------------------------------------------------------------------------------------

    1.让用户只能选择项。

    很简单,设置ComboBox的属性DropDownStyle为DropDownList即可。


    ------------------------------------------------------------------------------------------

    2.往ComboBox中添加新项。

     private void Form1_Load(object sender, EventArgs e)
            {
                this.cmbTest.Items.Add("A");
                this.cmbTest.Items.Add("B");
                this.cmbTest.Items.Add("C");
                this.cmbTest.Items.Add("D");
            }

    //效果截图如下


    ------------------------------------------------------------------------------------

    3.设置默认选择的项。

    this.cmbTest.SelectedIndex = 3; //选择第四项,注意,编号从0开始


    --------------------------------------------------------------------------------------------

    4.获取选择的项的文本。

    MessageBox.Show(this.cmbTest.SelectedItem.ToString());


    ----------------------------------------------------------------------------------------------

    5.遍历ComboBox控件中每一项的文本:

                //从最后一项开始遍历            for (int i = this.cmbRoomId.Items.Count - 1; i >= 0;i-- )            {                this.cmbRoomId.SelectedIndex=i;//选择第i项                if (this.cmbRoomId.Text.Trim().Equals("Admin"))//判断项的文本                {                    break;//找到就停止遍历                }            }
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------

    6.数据绑定:

    在SQL2005数据库中,我有两列renterID和renterName

    //截图如下


    现在我想让ComboBox控件显示的是renterName,而ComboBox实际的值却是renterID,

    我们如何做呢?

    先看下我们写的SQL语句:select renterId,renterName from Renter

    有了SQL语句,怎么获取数据集DataSet,这个不用我说了吧?

    有了数据集后,我们就可以将其绑定到ComboBox中了。

    代码如下:

     string sql="select renterId,renterName from Renter";//SqlHelper.GetConnection()的作用是获取一个数据库连接对象,这是我自己封装的方法,请灵活应变。 using (SqlDataAdapter da = new SqlDataAdapter(sql,SqlHelper.GetConnection()))               {                    DataSet ds = new DataSet();                    da.Fill(ds);//填充数据集,即获取数据集                    this.cmbRenter.DataSource = ds.Tables[0].DefaultView; //设置ComboBox的数据源                    this.cmbRenter.DisplayMember = "renterName"; //让ComboBox显示renterName列                    this.cmbRenter.ValueMember = "renterId"//让ComboBox实际的值为renterId列                }

    数据绑定好后,我们如何获取renterId的值呢?代码如下:

    MessageBox.Show(this.cmbRenter.SelectedValue.ToString()); 

    //效果截图如下:

                     

    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------


    您的十分满意是我追求的宗旨。

    您的一点建议是我后续的动力。









               

    给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

    这里写图片描述
    展开全文
  • MFC ComboBox控件的使用方法,可以帮助熟悉MFC ComboBox控件,有一定帮助
  • wpf combobox控件学习

    2013-06-02 16:58:57
    对wpf combobox控件以及连接数据库的基本学习
  • WPF中实现多选ComboBox控件 原文:WPF中实现多选ComboBox控件在WPF中实现带CheckBox的ComboBox控件,让ComboBox控件可以支持多选。 将ComboBox的ItemsSource属性Binding到一个Book的集合, public...
  • Flex ComboBox控件

    2013-04-26 16:57:19
    本文和大家重点学习一下Flex ComboBox控件的用法,Flex ComboBox控件就是下拉框,在Flex中如果使用此控件的话可以变得更炫了,并且用户使用起来更方便。 Flex ComboBox控件 1.动态添加数据 首先:创建一个...
  • C# ComboBox控件针对首字母检索的两种做法 一种是封装ComboBox控件 但对DataSource不可以更改 另一种是连接SQL获取数据源 两行数据 zm和Titles 如:zm存放(bj)Titles存放(北京) 通过委托查找数据 两种方法随君所...
  • Java 自定义并生成带图标的ComboBox控件,为ComboBox控件的列表项中添加ICO图标的功能,看上去更醒目。  定义Object二维数组,用于初始化下拉框,参数依次为图标,显示文本,提示文本,初始化ComboBox下拉框,下拉框...
  • C# ComboBox控件使用

    2018-01-30 17:50:13
    转载连接: ... ...C# ComboBox控件使用 博客分类: .NET CC++C#编程F#  ComboBox控件添加项有两种方法: 一、编程方式添加: 使用comboBox.Items.Add(ojbect item)方法添加一个
  • 主要介绍了C#用ComboBox控件实现省与市的联动效果的方法,较为详细的分析了ComboBox控件的使用原理与相关技巧,需要的朋友可以参考下
  • 主要介绍了C#实现ComboBox控件显示出多个数据源属性的方法,实例分析了ComboBox控件的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,325
精华内容 1,730
关键字:

combobox控件