当前位置:文档之家› ComboBox的用法

ComboBox的用法

ComboBox的用法
ComboBox的用法

Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用MFC CComboBox Class来操作字符串列表。

1、定义控件对应变量

假定已经创建了一个Dialog,并且从控件工具箱将Combo Box 控件拖放到上面。打开Class Wizard,添加控件对应变量,如:CComboBox m_cbExamble;

在后面的代码中会不断使用这个变量。

2、向控件添加Items

1) 在Combo Box控件属性的Data标签里面添加,一行表示Combo Box下拉列表中的一行。换行用ctrl+回车。

2) 利用函数AddString() 向Combo Box 控件添加Items,如:

m_cbExample.AddString(“StringData1”);

m_cbExample.AddString(“StringData2”);

m_cbExample.AddString(“StringData3”);

3) 也可以调用函数InsertString() 将Item 插入指定位置nIndex,如:

m_cbExample.InsertString( nIndex, “StringData” );

3、从控件得到选定的Item

假设在控件列表中已经选定某项,现在要得到被选定项的内容,首先要得到该项的位置,然后得到对应位置的内容。这里会用到两个函数,如:

int nIndex = m_cbExample.GetCurSel();

CString strCBText;

m_cbExample.GetLBText( nIndex, strCBText);

这样,得到的内容就保存在strCBText 中。

若要选取当前内容,可调用函数GetWindowText(strCBText)。

4、在控件中查找给定Item

这种操作一般用于在程序中动态修改控件中该项的值,可以用函数FindStringExact() 精确匹配,如:

int nIndex = m_cbExample.FindStringExact( nStartAfter, “value to be found”);

nStartAfter指明从哪一行开始查找。如果查找成功,返回的是该项的位置;否则,返回CB_ERR。

也可以选中包含指定字符串的项,如:

int nIndex = m_cbExample.SelectString( nStartAfter, “value to be selected”);

5、删除控件中的Item

该操作可以利用函数DeleteString(),需要指定被删除项的位置,如:

m_cbExample.DeleteString(nIndex);

也可以使用函数ResetContent(),清除目前的所有项,如:

m_cbExample.ResetContent();

6、显示控件中的某项

int nIndex = m_cbExample.GetCurSel(); //当前选中的项

m_cbExample.SetCurSel(nIndex); //设置第nIndex项为显示的内容

7、得到或设置输入框中被选中的字符位置

DWORD GetEditSel( ) /BOOL SetEditSel( int nStartChar, int nEndChar );

BOOL LimitText( int nMaxChars ); 设置输入框中可输入的最大字符数。

8、列表框常用消息映射宏

ON_CBN_DBLCLK 鼠标双击

ON_CBN_DROPDOWN 列表框被弹出

ON_CBN_KILLFOCUS / ON_CBN_SETFOCUS 在输入框失去/得到输入焦点时产生

ON_CBN_SELCHANGE 列表框中选择的行发生改变

ON_CBN_EDITUPDA TE 输入框中内容被更新

补充:

一、如何添加/删除Combo Box内容

1,在Combo Box控件属性的Data标签里面添加,一行表示Combo Box下拉列表中的一行。换行用ctrl+回车。

2,在程序初始化时动态添加

如://控件内容初始化

CString strTemp;

((CComboBox*)GetDlgItem(IDC_COMBO_CF))->ResetContent();//消除现有所有内容

for(int i=1;i<=100;i++)

{

strTemp.Format("%d",i);

((CComboBox*)GetDlgItem(IDC_COMBO_CF))->AddString(strTemp);

}

3,下拉的时候添加

如:CString strTemp;

int iCount=((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetCount();//取得目前已经有的行数

if(iCount<1)//防止重复多次添加

{

((CComboBox*)GetDlgItem(IDC_COMBO_CF))->ResetContent();

for(int i=1;i<=100;i++)

{

strTemp.Format("%d",i);

((CComboBox*)GetDlgItem(IDC_COMBO_CF))->AddString(strTemp);

}

}

4,删除

DeleteString( UINT nIndex )//删除指定行,

5,插入

InsertString( int nIndex, LPCTSTR lpszItem )//将行插入到指定位置

6,查找

FindString( int nStartAfter, LPCTSTR lpszItem )//可以在当前所有行中查找指定的字符传的位置,nStartAfter指明从那一行开始进行查找。

int SelectString( int nStartAfter, LPCTSTR lpszItem )//可以选中包含指定字符串的行

二、如何控制Combo Box的下拉长度

1,首先要知道两点:一、那就是在设计界面里,点击一下Combo Box的下拉箭头,此时出现的调整框就是Combo Box的下拉调整框。

2,二、属性里有个No integral height 钩选项,表示最大长度为设计长度,如果实际内容比设计长度多,就出现滚动条,少就以实际长度显示。

三、选择其中的某行

1,选中:

int iPos=((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetCurSel();//当前选中的行。

2,设置

((CComboBox*)GetDlgItem(IDC_COMBO_CF))->SetCurSel(n)//设置第n行内容为显示的内容。

四、取得Combo Box框内容

1取当前内容

((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetWindowText(strTemp);

2取其他行内容

((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetLBText(n,strTemp);

四、获得焦点

通常要判断控件是否获得了焦点,可以用GetFocus()函数

例如:if(GetFocus()==GetDlgItem(IDC_EDIT_V ALUE2))//判断焦点是否在编辑框IDC_EDIT_VALUE2内。

但是combobox 的焦点不同,因为它是由edit和listbox两部分组成的

所以获得焦点要用GetParent():if ((GetFocus()->GetParent())==GetDlgItem(IDC_COMBO_CF))

控制Combo Box的下拉长度

1,首先要知道两点:一、那就是在设计界面里,点击一下Combo Box的下拉箭头,此时出现的调整框就是Combo Box的下拉调整框。

二、属性里有个No integral height 钩选项,表示最大长度为设计长度,如果实际内容比设计长度多,就出现滚动条,少就以实际长度显示。

VC++ Combo Box/Combo Box Ex控件

组合窗口是由一个输入框和一个列表框组成。创建一个组合窗口可以使用成员函数:

BOOL CListBox::Create( LPCTSTR lpszText, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID = 0xffff );

其中dwStyle将指明该窗口的风格,除了子窗口常用的风格WS_CHILD,WS_VISIBLE外,你可以针对列表控件指明专门的风格。

CBS_DROPDOWN 下拉式组合框

CBS_DROPDOWNLIST 下拉式组合框,但是输入框内不能进行输入

CBS_SIMPLE 输入框和列表框同时被显示

LBS_SORT 所有的行按照字母顺序进行排序

由于组合框内包含了列表框,所以列表框的功能都能够使用,如可以利用:

int AddString( LPCTSTR lpszItem )添加行,

int DeleteString( UINT nIndex )删除指定行,

int InsertString( int nIndex, LPCTSTR lpszItem )将行插入到指定位置。

void ResetContent( )可以删除列表框中所有行。

通过调用int GetCount( )得到当前列表框中行的数量。

如果需要得到/设置当前被选中的行的位置,可以调用int GetCurSel( )/int SetCurSel(int iIndex)。通过调用int GetLBText( int nIndex, LPTSTR lpszText )得到列表框内指定行的字符串。

此外通过调用int FindString( int nStartAfter, LPCTSTR lpszItem )可以在当前所有行中查找指定的字符传的位置,nStartAfter指明从那一行开始进行查找。

int SelectString( int nStartAfter, LPCTSTR lpszItem )可以选中包含指定字符串的行。

此外输入框的功能都能够使用,如可以利用:

DWORD GetEditSel( ) /BOOL SetEditSel( int nStartChar, int nEndChar )得到或设置输入框中被选中的字符位置。

BOOL LimitText( int nMaxChars )设置输入框中可输入的最大字符数。

输入框的剪贴板功能Copy,Clear,Cut,Paste动可以使用。

最后介绍一下列表框几种常用的消息映射宏:

ON_CBN_DBLCLK 鼠标双击

ON_CBN_DROPDOWN 列表框被弹出

ON_CBN_KILLFOCUS / ON_CBN_SETFOCUS 在输入框失去/得到输入焦点时产生

ON_CBN_SELCHANGE 列表框中选择的行发生改变

ON_CBN_EDITUPDA TE 输入框中内容被更新

使用以上几种消息映射的方法为定义原型如:afx_msg void memberFxn( );的函数,并且定义形式如ON_Notification( id, memberFxn )的消息映射。如果在对话框中使用组合框,Class Wizard会自动列出相关的消息,并能自动产生消息映射代码。

在MFC 4.2中对组合框进行了增强,你可以在组合框中使用ImageList,有一个新的类CComboBoxEx(由CComboBox派生)来实现这一功能。在CComboBoxEx类中添加了一些新的成员函数来实现新的功能:首先你需要调用CImageList* SetImageList( CImageList* pImageList );来设置ImageList,然后调用

int InsertItem( const COMBOBOXEXITEM* pCBItem );来添加行,其中COMBOBOXEXITEM 定义如下:

typedef struct { UINT mask; int iItem; LPTSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int iOverlay; int iIndent; LPARAM lParam;} COMBOBOXEXITEM, *PCOMBOBOXEXITEM;

你需要设置mask=CBEIF_IMAGE CBEIF_TEXT,并设置iItem为插入位置,设置pszText 为显示字符串,设置iImage为显示的图标索引。下面的代码演示了如何进行插入:

/*m_cbeWnd 为已经创建的CComboBox对象

m_list 为CImageList对象IDB_IMG 为16*(16*4)的位图,每个图片为16*16共4个图标*/

m_list.Create(IDB_IMG,16,4,RGB(0,0,0));

m_cbeWnd.SetImageList(&m_list);

COMBOBOXEXITEM insItem;insItem.mask=CBEIF_IMAGE CBEIF_TEXT;insItem.iItem=0; insItem.iImage=0;insItem.pszText="Line

1";m_cbeWnd.InsertItem(&insItem);insItem.iItem=1;insItem.iImage=1;insItem.pszText="Line 2";m_cbeWnd.InsertItem(&insItem);

通过调用int DeleteItem( int iIndex );来删除行,并指明行的位置。

通过调用BOOL GetItem( COMBOBOXEXITEM* pCBItem )/BOOL SetItem( const COMBOBOXEXITEM* pCBItem );来得到/设置行数据

******************************************************************************* ***********************

tonyswe(tong)回复于2003-03-10 13:31:10 得分0 这位朋友可能也是新手.

是不是加了,运行后看不到选项.

加上后.要先在combo box的属性里的styles->types下选simple,然后把combo box框拉大, 也就是你希望的下拉的范围大小. 再回到styles->types下选drop down 就行了.

MFC ComBox ResetContent( )

MFC, ComBox, ResetContent

在ComBox控件的EditExchange事件中,添加ResetContent( )函数清空列表后无法输入数据,如何解决这个问题

void CTestDlg::OnEditchangeCombo1()

{

((CComboBox*)GetDlgItem(IDC_COMBO1))->ResetContent();

//其他.....

}

WinForm Combox问题?

Combox, WinForm

WinForm窗体,Combox如何让其不可编辑?

WinForm窗体,如何限制TextBox只能输入数字?并且数字长度不能小于6?

1:

WinForm Combox问题?

[此问题的推荐答案]

将Combox的DropDownStyle属性设置为DropDownList就OK了。

数字长度不能小于6: this.textBox1.MaxLength=6;

如何限制TextBox只能输入数字:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)

{

if (e.KeyChar < 48 || e.KeyChar > 57)

if (e.KeyChar != (char)(Keys.Back))

e.Handled = true;

}

2:

WinForm Combox问题?

s="ianswer"> 其他回答共7 条

将Combox的DropDownStyle属性设置为DropDownList,那样的话只可以选择,不可以输入;

TextBox如果只能输入数字,那么就需要在代码中进行判断,数字长度不能小于6也需要在代码中判断

VB 的COMBOX控件的STYLE 属性设置了2-dropdown list 属性,怎么添加默认的文本? list, COMBOX, 控件, 文本, STYLE

就是我打开窗体的时候,要它显示的就是列表里面的某列,而不是空的!!!

怎么实现?

非常非常谢谢!

VB 的COMBOX控件的STYLE 属性设置了2-dropdown list 属性,怎么添加默认的文本? [此问题的推荐答案]

Combo1.ListIndex=0 '显示第一项,其它一次类推

combox取值的用法c#-个人经验

comboxIlist 如果绑定的是List那需要绑定实体类里的属性名comboBox1.DisplayMember User_Name comboBox1.ValueMember User_Ide 注意手动赋值comboBox1.SelectedIndex -1的时候也会触发 comboBox1_SelectedIndexChanged事件需要得到被选中的文本时用的是comboBox1.Text不是comboBox1.SelectedText //SelectedText是指被鼠标框中的文本不是选中项的文本 //SelectedItem是指选中项所指向的对象如果//IList a collection.GetUser //comboBox1.DataSource a //那么SelectedItem就代表IList里的其中一项//如果toString的话就会出现“namespace.class”(这是一个名称的字符串)所以如果要获取combox中的value和值当当使用SelectedValueChanged方法时应该采用如下方法: product_catecombParentCate.SelectedItem.Cate_id 强转的类型改成你对应的实体类如果在点击某个按钮事件的时候触发,需要采用如下方法 combParentCate.SelectedValue.ToString private void frmSelectProduct_Loadobject sender EventArgs e combParentCate.DataSource dbProductCate.getAllCateDatasetForCombox combParentCate.DisplayMember cate_name combParentCate.ValueMember cate_id

WPF中往COMBOBOX里添加选项并指定默认选项

WPF中往ComboBox 里添加选项并指定默认选项 这ComboBox里可以在XAML中直接给它添加选项,这里不直接废话,下面是在你要添加的ComboBox在XAML中的实现: 1 <ComboBox x:Name="MyComBox" Height="20" Canvas.Left="110" Canvas.Top="255" Width="86" DisplayMemberPath="Frequ"SelectionChanged="myComboBox_SelectionCh anged"> 注意代码里在ComboBox属性里的DisplayMemberPath="Frequ" 这个是一种绑定也是填充选项的关键,要与C#里的定义的结构体的成员名字一致。这个事件是当你选择ComboBox里的选项时触发的事件SelectionChanged="myComboBox_SelectionChanged"。接着是定义结构体: 1 public struct Frequency 2 { 3 public int ID{get;set;} 4 public string Frequ{get;set;} 5 } 里面的ID可以不设置,但很重要,当我们选择选项的时候可以用index处理我们的选择,其中关于取到选项的索引很容易但要取到选项的内容好像不太容易。 1 List<Frequency> list = new List<Frequency>(); 2 Frequency freq = new Frequency(); 3 for(int i = 0; i < lFreq.Length; i++) 4 { 5 freq.ID = i; 6 freq.Frequ = lFreq[i].ToString(); 7 list.Add(freq); 8 }

第9章_数据绑定控件

第九章数据绑定控件 https://www.doczj.com/doc/365457981.html, 2.0技术依靠两种类型的服务器控件实现数据访问:数据源控件和数据绑定控件。前者负责连接和访问数据库,而后者负责将从数据库中获取的数据显示出来。 数据绑定控件有很多,前面讲述数据源控件的时候,我们用到的GridView控件,就是一个功能强大、最为常用的数据绑定控件。本章主要围绕https://www.doczj.com/doc/365457981.html, 2.0中诸如GridView、DetailsView以及FormV iew控件等几个重要数据绑定控件的使用方法展开讨论。 9.1 数据绑定控件概述 数据绑定控件主要用于在Web页面显示数据。一般情况下,数据绑定控件与数据源控件进行绑定,以极其灵活的方式将数据源控件提供的数据资料显示出来。 本质上来说,数据绑定控件是将数据作为标记向发出请求的客户端设备或浏览器呈现的用户接口(UI)控件。主要包括: 1)、列表控件:以各种列表形式呈现数据;2)、AdRotator:可以将广告作为图像呈现在页面上;3)、复合控件:包括DetailView、FormView和GridV iew等控件;4)、分层控件:主要有TreeView、Menu等控件。图9.1给出了数据绑定控件的层次结构。 图9.1 https://www.doczj.com/doc/365457981.html, 2.0 中的数据绑定控件的层次结构

图中,BaseDataBoundControl是个抽象类,所有数据绑定控件都是从该抽象类派生的。在这个抽象类中,定义了几个重要的属性和一个至关重要的方法成员。 1)、DataSource属性:指定数据绑定控件的数据来源,显示的时候程序将会从这个数据源中获取数据并显示;2)、DataSourceID属性:指定数据绑定控件的数据源控件的ID, 显示的时候程序将会根据这个ID找到相应的数据源控件,并利用这个数据源控件中指定方法获取数据并显示;3)、DataBind()方法:当指定了数据绑定控件的DataSource属性或者DataSourceID属性之后,再调用DataBind()方法才会显示绑定的数据。并且在使用数据源时,会首先尝试使用DataSourceID属性标识的数据源,如果没有设置DataSourceID时才会用到DataSource属性标识的数据源。也就是说DataSource和DataSourceID两个属性不能同时使用。 数据绑定控件显示格式丰富,包括常见的表格、树形、报表等多种表达形式;同时,这些控件又具有丰富的功能,譬如支持对数据资料的分页、排序、添加、修改、删除等操作。 9.2 GridView控件 9.2.1 GridView控件简介 GridView控件是早期DataGrid控件的更新,功能更强大。她采用表格形式显示从数据源中获取的数据。表9.1对GridView控件的功能进行了简单描述。 表9.1 GridView控件的功能描述 GridView支持大量属性,这些属性属于如下几大类:行为、外观、样式、状态和模板等。表9.2~表9.4描述了其主要的行为、外观、样式等属性。 表9.2 GridView控件的行为属性

在easyUI中如何让combobox绑定焦点失去事件.doc

在easyUI中如何让combobox绑定焦点失去事件 //easyui将jQuery的部分功能进行了封装,jQuery的方法不能直接实现,只有使用easyui的方法来实现 $("input",$("#carid").next("span")).blur(function(){ //验证车辆选择框输入的值是否在下拉列表的值中 var _value=$("#carid").combobox("getValue");//获取输入框的值 // variableMap.carList是后台封装成json后传递的车辆列表参数 for (var i=0; i < variableMap.carList.length; i++) { //验证输入框,判断输入框的值是否在下拉列表中(输入框自带必填属性) if(_value!=variableMap.carList[i].platenumber&&_value!=""){ //如果不是下拉列表的值,在输入框中提示 $("#carid").combobox("setValue","请选择已有的车辆!"); } } }); $("input",$("#motormanid").next("span")).blur(function(){ //验证司机选择框输入的值是否在下拉列表的值中 var _value=$("#motormanid").combobox("getValue"); // variableMap.mmList是后台封装成json后传递的司机列表参数 for (var i = 0; i < variableMap.mmList.length; i++) { if(_value!=variableMap.mmList[i].name&&_value!=""){ //验证输入框 $("#motormanid").combobox("setValue","请选择已有的司机!"); } } });

MFC Combo Box(组合框)控件的用法

以下内容为本人积累记录所总结,分享给大家 一、如何添加/删除Combo Box内容 1,在Combo Box控件属性的Data标签里面添加,一行表示Combo Box下拉列表中的一行。换行用ctrl+回车。 2,在程序初始化时动态添加 如://控件内容初始化 CString strTemp; ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->ResetContent();//消除现有所有内容 for(int i=1;i<=100;i++) { strTemp.Format("%d",i); ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->AddString(strTemp); } 3,下拉的时候添加 如:CString strTemp; int iCount=((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetCount();//取得目前已经有的行数 if(iCount<1)//防止重复多次添加 { ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->ResetContent(); for(int i=1;i<=100;i++) { strTemp.Format("%d",i); ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->AddString(strTemp);

} } 4,删除 DeleteString( UINT nIndex )//删除指定行, 5,插入 InsertString( int nIndex, LPCTSTR lpszItem )//将行插入到指定位置 6,查找 FindString( int nStartAfter, LPCTSTR lpszItem )//可以在当前所有行中查找指定的字符传的位置,nStartAfter指明从那一行开始进行查找。 int SelectString( int nStartAfter, LPCTSTR lpszItem )//可以选中包含指定字符串的行 二、如何控制Combo Box的下拉长度 1,首先要知道两点:一、那就是在设计界面里,点击一下Combo Box的下拉箭头,此时出现的调整框就是Combo Box的下拉调整框。 2,二、属性里有个No integral height 钩选项,表示最大长度为设计长度,如果实际内容比设计长度多,就出现滚动条,少就以实际长度显示。 三、选择其中的某行 1,选中: int iPos=((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetCurSel();//当前选中的行。 2,设置 ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->SetCurSel(n)//设置第n行内容为显示的内容。 四、取得Combo Box框内容 1取当前内容 ((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetWindowText(strTemp);

https://www.doczj.com/doc/365457981.html,ComboBox-控件的使用

https://www.doczj.com/doc/365457981.html,入门——ComboBox 控件的使用 前面我们了解了ListBox(列表框)控件的使用(参看:https://www.doczj.com/doc/365457981.html,入门——ListBox控件的使用),在https://www.doczj.com/doc/365457981.html,中还有一个与ListBox控件十分相似的控件——ComboBox 控件,也叫组合框。组合框控件包括两个部分,一部分是上部可以输入列表项的文本框;另一部分是位于文本框下方的列表框,用于显示用户可以从中选择的项的列表,如图一所示 组合框控件在https://www.doczj.com/doc/365457981.html,工具箱中如下图二所示: ComboBox 控件和ListBox 控件在功能上很相似,很多情况下,这两个控件是可以互换使用的,但是还是有某种特定的环境下只适合使用一种控件的情况。 通常,ComboBox控件适合于建议用户选择控件所列举的选项、同时又可以让用户自行在文本框中输入列表中不存在的选项的情况;而ListBox 控件适合于限制用户只能选择列表中的选项的情况。 在用户界面上,因为ComboBox 控件默认情况下是存在下拉列表框的,所以比ListBox 控件占用的窗体空间少,更加适合于使用在存在大量列表项的情况下。如下图三所示的是QQ修改个人设置的界面,它大量地合理使用ComboBox 控件,使得用户界面简洁且能容纳下更多的选项信息。 由此可见,ComboBox 控件的比ListBox 控件更加能灵活多用。

一、ComboBox 控件的常用属性: 1、BackColor 属性:获取或设置ComboBox 控件的背景色。 2、DropDownStyle 属性:获取或设置指定组合框样式的值,确定用户能否在文本部分中输入新值以及列表部分是否总显示。它包含三个值,默认值为 DropDown,如下表所示: 3、DropDownWidth 属性:用于获取或设置组合框下拉部分的宽度(以像素为单位),有些列表项太长,则需要通过改变该属性来显示该类表项的全部文字,如果未设置 DropDownWidth 的值,该属性返回组合框的Width。需要注意的是,下拉部分的宽度不能小于 ComboBox 的宽度,所以我们设置 DropDownWidth 的值如果小于ComboBox 的宽度时下拉列表框的宽度还是与文本框的宽度一样。 4、DroppedDown 属性:获取或设置一个值,该值指示组合框是否正在显示其下拉部分。如果显示下拉部分,则为 true;否则为 false。默认值为 false。 5、IntegralHeight 属性:指定是否自动调整编辑框或列表框控件的高度,这样可以正确显示控件中的最后一项。指定是否自动调整文本框控件的高度,以显示一行文本。设计时可用;运行时只读。默认为False。如果列表框控件的高度不合适,则控件中的最后一行文字会只显示一部分,将 IntergralHeight 设置为“True”,可以自动调整控件的高度,这样可以正确显示控件中的最后一项。注意:当 integralheight 属性设置为“True”时,Height 属性的值可能与控件的真实高度不符。 6、Items 属性:获取一个对象,该对象表示该 ComboBox 中所包含项的集合。详细用法我们在下文介绍。 7、MaxDropDownItems 属性:下拉部分中可显示的最大项数。该属性的最小值为 1,最大值为 100。 8、Text 属性:ComboBox 控件中文本输入框中显示的文本。 9、SelectedIndex 属性和 SelectedItem 属性:SelectedIndex 属性返回一个表示与当前选定列表项的索引的整数值,可以编程更改它,列表中相应项将出现在组合框的文本框内。如果未选定任何项,则SelectedIndex 为-1;如果选择了某个项,则SelectedIndex 是从0开始的整数值。SelectedItem 属性与 SelectedIndex 属性类似,但是SelectedItem 属性返回的是项。 10、SelectedText 属性:表示组合框中当前选定文本的字符串。如果 DropDownStyle 设置为ComboBoxStyle.DropDownList,则返回值为空字符串 ("")。可以将文本分配给此属性,以更改组合框中当前选定的文本。如果组合框中当前没有选定的文本,则此属性返回一个零长度字符串。如下代码,我们可以在ComboBox 控件的鼠标事件中验证该属性:

combobox 属性、事件、方法

一、combobox 属性、事件、方法 公共属性 名称 说明 AccessibilityObject 获取分配给该控件的AccessibleObject。 AccessibleDefaultActionDescription 获取或设置控件的默认操作说明,供辅助功能客户端应用程序使用。 AccessibleDescription 获取或设置辅助功能客户端应用程序使用的控件说明。 AccessibleName 获取或设置辅助功能客户端应用程序所使用的控件名称。 AccessibleRole 获取或设置控件的辅助性角色 AllowDrop 获取或设置一个值,该值指示控件是否可以接受用户拖放到它上面的数据。 Anchor 获取或设置控件绑定到的容器的边缘并确定控件如何随其父级一起调整大小。 AutoCompleteCustomSource 获取或设置在AutoCompleteSource 属性设置为CustomSource 时使用的自定义System.Collections.Specialized.StringCollection AutoCompleteMode 获取或设置控制自动完成如何作用于ComboBox 的选项。 AutoCompleteSource 获取或设置一个值,该值指定用于自动完成的完整字符串源。 AutoScrollOffset 获取或设置一个值,该值指示在ScrollControlIntoView 中将控件滚动到何处。 BindingContext 获取或设置控件的BindingContext。 Bottom

获取控件下边缘与其容器的工作区上边缘之间的距离(以像素为单位)。 Bounds 获取或设置控件(包括其非工作区元素)相对于其父控件的大小和位置(以像素为单位)。 CanFocus 获取一个值,该值指示控件是否可以接收焦点。 CanSelect 获取一个值,该值指示是否可以选中控件。 Capture 获取或设置一个值,该值指示控件是否已捕获鼠标。 CausesValidation 获取或设置一个值,该值指示控件是否会引起在任何需要在接收焦点时执行验证的控件上执行验证。 CheckForIllegalCrossThreadCalls 获取或设置一个值,该值指示是否捕获对错误线程的调用,这些调用访问控件的Handle 属性。 ClientRectangle 获取表示控件的工作区的矩形。 ClientSize 获取或设置控件的工作区的高度和宽度。 CompanyName 获取包含控件的应用程序的公司名称或创建者。 Container 获取IContainer,它包含Component。 ContainsFocus 获取一个值,该值指示控件或它的一个子控件当前是否有输入焦点。 ContextMenu 获取或设置与控件关联的快捷菜单。 ContextMenuStrip 获取或设置与此控件关联的ContextMenuStrip。 Controls

数据源控件SqlDataSource-推荐下载

肇庆学院计算机学院 数据源控件 实验报告 实验名称 数据源控件SqlDataSource 班 级 10网络工程1班姓 名 陈琳炜 学 号 201024133124 实验地点实验楼506 日 期2013.6.30 成 绩 一、实验目的: (1)掌握数据源控件的使用方法,可迅速搭建前台与后台数据库信息链接; (2)掌握数据源控件中对数据进行筛选方法,懂得应用WHERE 语句(非编程方式就能使得按 一定规则获取数据); (3)掌握多个数据源控件间搭配使用方法技巧。 二、实验环境: Windows 系列操作系统的计算机,软件visual studio 2010。 三、实验内容、步骤、实验结果与分析: 祥见附页 5、实验总结 掌握多个数据源控件间搭配使用方法技巧。 、管路敷设技术通过管线不仅可以解决吊顶层配置不规范高中资料试卷问题,而且可保障各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。、电气课件中调试对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行 高中资料试卷调整试验;通电检查所有设备高中资料试卷相互作用与相互关系,根据生产工艺高中资料试卷要求,对电气设备进行空载与带负荷下高中资料试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。 、电气设备调试高中资料试卷技术电力保护装置调试技术,电力保护高中资料试卷配置技术是指机组在进行继电保护高中资料试卷总体配置时,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免不必要高中资料试卷突然停机。因此,电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。

C#中DatagridView单元格动态绑定控件

C#中DatagridView单元格动态绑定控件 C#中DatagridView单元格动态绑定控件 我们在使用DatagridView的列样式的时候很方便,可以设置成comboboxcolumn,textboxcolumn等等样式,使用起来非常方便,但是,这样设置的列都采用同一种样式.对同一列采用多种样式的,就需要单独对单元格进行操作了. 具体方法如下: 1.实例化一个定义好的控件:如combobox 2.初始化combobox 控件3.获取private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) { if (dataGridView1.CurrentCell.ReadOnly == false && dataGridView1.CurrentCell.RowIndex == 2) // combobox显示条件 { comboBox1.Text = dataGridView1.CurrentCell.Value.ToString(); //对combobox 赋值R = dataGridView1.GetCellDisplayRectangle(dataGridView1.Curre ntCell.ColumnIndex, dataGridView1.CurrentCell.RowIndex, false); //获取单元格位置

comboBox1.SetBounds(R.X + dataGridView1.Location.X, R.Y + dataGridView1.Location.Y, R.Width, R.Height); //重新定位combobox.中间有坐标位置的转换 comboBox1.Visible = true; } else comboBox1.Visible = false; } 4.将combobox的值写回到单元格 private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { dataGridView1.CurrentCell.Value = comboBox1.Text; }

ComboBox下拉框汇总

ComboBox hwndCtl为此组合框的句柄,lpsz为需要添加的字符串,组合框不能直接通过id添加内容,所以需要得到这个控件的句柄,还得使用GetDlgItem()函数. 1C++ 添加内容 ComboBox_AddString(hwndCtl,lpsz) 举例: HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1); //建立一个组合框,ID可以设置为IDC_C1,然后通过GetDlgItem获取这个组合框的句柄 //如果无法正常显示,需要调整此组合框的最大显示范围,在向下箭头上出现上下箭头时可以调整. ComboBox_AddString(hwndCombo1,TEXT("内容1")); ComboBox_AddString(hwndCombo1,TEXT("内容2")); //使用IDC_C1的句柄hwndCombo1,然后添加内容,多次调用可以设置多项文字, //添加的内容通常都放在Main_OnInitDialog()初始化函数中,也可以通过按钮或其他控件调用.[1] 获取项目个数 ComboBox_GetCount(hwndCtl) 这个函数的返回值为int,参数hwndCtl为此组合框控件句柄; 举例: HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1);

int count = ComboBox_GetCount(hwndCombo1); //通过定义count拿到返回值.[1] 删除内容 ComboBox_DeleteString(hwndCtl, index) hwndCtl为句柄,index为项目索引号,从上至下,从0开始排列,所以0就是删除第一项. 举例: HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1); ComboBox_DeleteString(hwndCombo1,0);[1] 获取索引号 ComboBox_GetCurSel(hwndCtl) 此函数的返回值为int,返回项目索引号. 举例: HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1); int count = ComboBox_GetCurSel(hwndCombo1); //获取到索引号. TCHAR str1[256]; sprintf(str1,"当前选中的项索引号为:%d",count); //使用sprintf储存说明文字跟索引号, MessageBox(hwnd,str1,TEXT("标题"),MB_OK); ComboBox_DeleteString(hwndCombo1,count); //删除获取此索引号的项. MessageBox(hwnd,TEXT("删除当前选中的项"),TEXT("标题"),MB_OK);

.NET4.0 绑定控件与数据源控件

https://www.doczj.com/doc/365457981.html,4.0 绑定控件与数据源控件 微软定义了一系列的控件专门用于显示数据的格式,通过这些控件可以可视化的方式查看绑定数据之后的效果。这些控件称之为数据绑定控件。 在https://www.doczj.com/doc/365457981.html,中,所有的数据库绑定控件都是从BaseDataBoundControl这个抽象类派生的,这个抽象类定义了几个重要属性和一个重要方法: ●DataSource属性指定数据绑定控件的数据来源,显示的时候程序将会从这个数据源 中获取数据并显示。 ●DataSourceID属性指定数据绑定控件的数据源控件的ID,显示的时候程序将会根据 这个ID找到相应的数据源控件,并利用这个数据源控件中指定方法获取数据并显示。 ●DataBind ()方法当指定了数据绑定控件的DataSource属性或者DataSourceID属性之 后,再调用DataBind()方法显示绑定的数据。 在使用数据源时,先尝试使用DataSourceID属性标识的数据源,如果没有设置Data SourceID时才会用到DataSource属性标识的数据源。也就是说DataSource和DataSo urceID两个属性不能同时使用。 在https://www.doczj.com/doc/365457981.html,中,主要包含5个数据源控件,如GridView、DataList、Repeator、DetailsView、FormView。其中,前3个控件用于呈现多列数据,而后面2个控件用于呈现单列数据。 ●GridView控件 GridView 控件以表的形式显示数据,并提供对列进行排序、分页、翻阅数据以及编辑或删除单个记录的功能。GridView 控件是https://www.doczj.com/doc/365457981.html, 的早期版本中提供的DataGrid 控件的后继控件。除了添加利用数据源控件功能的新功能,GridView 控件还实现了某些改进。 ●DetailsView控件 DetailsView控件一次呈现一条表格形式的记录,并提供翻阅多条记录以及插入、更新和删除记录的功能。DetailsView 控件通常用在主/详细信息方案中,在这种方案中,主控件(如GridView 控件)中的所选记录决定了DetailsView 控件显示的记录。 ●FormView 控件 FormView 控件与DetailsView 控件类似,它一次呈现数据源中的一条记录,并提供翻阅多条记录以及插入、更新和删除记录的功能。但是,DetailsView控件使用基于表格的布局,数据记录的每个字段都显示为控件中的一行。而FormView 控件则不指定用于显示记录的预定义布局。 ●Repeater控件

ComboBox 要注意的几个小问题

ComboBox 要注意的几个小问题 -- 值跑位,值显示,获取输入值 2010年08月11日星期三 12:59 在Extjs中,使用到ComboBox总会出现一些小问题,找半天都找不出来原因,下面就是几个要注意的。。 1。ComboBox加载数据之后,ComboBox里面的值跑位,不能正确对应到ComboBox 里面。 原因:因为要传name的值到服务器端,使用到了隐藏属性hiddeName来传值,hiddenName的名是要和name一样的。如果id和name设置为相同的,就会不能正确对应。所以,comboBox的id和name 不能设置一样 new https://www.doczj.com/doc/365457981.html,boBox({ id:"comboId", name:"comboName", hiddenName:"comboName" }); //注意:加了HiddenName这个属性,得到的ComboBox是它的id,反则是显示值。。 2。第二个问题是明明已经加载了数据之后store里面也有值,确没有再ComboBox里面显示,这个你就要注意你的ComboBox里面有没有设置valueField 和 displayField, valueField绑定到当前底层数据,相当于它的 id,displayValue,绑定到当前底层数据对应的名词,顾名思义也就是显示出来的值。还要注意一下,它的映射是否也有写,field 里面是否写正确了。如果这两个属性没有,那就是值怎么也显示不出来的。还有一点是,得到的值从服务器端传回来,一定要记得有response.getWrite().print(json格式值); 有时前台都写正确了,但是还是没值,那就是没有将值传到前台 store : new Ext.Data.Store({ proxy: new Ext.Data.httpProxy({}), reader:new Ext.data.JsonReader({}); field:["valueid","displayName"] }); new https://www.doczj.com/doc/365457981.html,boBox({ id:"comboId", name:"comboName", hiddenName:"comboName", store:store

ComboBox组合框的基本使用

Microsoft Visual C++ 6.0中ComboBox组合框的基本使用 更多详情可以参考msdn的标准规范:[1] 1 向组合框控件添加内容ComboBox_AddString(hwndCtl,lpsz) hwndCtl为此组合框的句柄,lpsz为需要添加的字符串,组合框不能直接通过id 添加内容,所以需要得到这个控件的句柄,还得使用GetDlgItem()函数. 举例: HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1); //建立一个组合框,ID可以设置为IDC_C1,然后通过GetDlgItem获取这个组合框的句柄 //如果无法正常显示,需要调整此组合框的最大显示范围,在向下箭头上出现上下箭头时可以调整. ComboBox_AddString(hwndCombo1,TEXT("内容1")); ComboBox_AddString(hwndCombo1,TEXT("内容2")); //使用IDC_C1的句柄hwndCombo1,然后添加内容,多次调用可以设置多项文字, //添加的内容通常都放在Main_OnInitDialog()初始化函数中,也可以通过按钮或其他控件调用. 2 获取组合框控件的项目个数ComboBox_GetCount(hwndCtl) 这个函数的返回值为int,参数hwndCtl为此组合框控件句柄; 举例: HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1); int count = ComboBox_GetCount(hwndCombo1); //通过定义count拿到返回值. 3 删除给定索引号的组合框控件的内容ComboBox_DeleteString(hwndCtl, index) hwndCtl为句柄,index为项目索引号,从上至下,从0开始排列,所以0就是删除第一项. 举例: HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1); ComboBox_DeleteString(hwndCombo1,0); 4 获取当前选中项的索引号ComboBox_GetCurSel(hwndCtl) 此函数的返回值为int,返回项目索引号. 举例: HWND hwndCombo1 = GetDlgItem(hwnd,IDC_C1); int count = ComboBox_GetCurSel(hwndCombo1); //获取到索引号. TCHAR str1[256]; sprintf(str1,"当前选中的项索引号为:%d",count); //使用sprintf储存说明文字跟索引号, MessageBox(hwnd,str1,TEXT("标题"),MB_OK); ComboBox_DeleteString(hwndCombo1,count); //删除获取此索引号的项. MessageBox(hwnd,TEXT("删除当前选中的项"),TEXT("标题"),MB_OK);

第8章.Web窗体的数据控件(https://www.doczj.com/doc/365457981.html, 3.5开发大全 共29章)

第8章 Web窗体的数据控件 在了解了https://www.doczj.com/doc/365457981.html,基础后,就可以使用https://www.doczj.com/doc/365457981.html,提供的对象进行数据库开发和操作。https://www.doczj.com/doc/365457981.html, 还提供了一些Web窗体的数据控件,开发人员能够智能的配置与数据库的连接,而不需要手动的编写数据库连接。https://www.doczj.com/doc/365457981.html,不仅提供了数据源控件,还提供了能够显示数据的控件,简化了数据显示的开发,开发人员只需要简单的修改模板就能够实现数据显示和分页。 8.1 数据源控件 数据源控件很像https://www.doczj.com/doc/365457981.html,中的Connection对象,数据源控件用来配置数据源,当数据控件绑定数据源控件时,就能够通过数据库源控件来获取数据源中的数据并显示。而无需通过程序实现数据源代码的编写。 8.1.1 SQL数据源控件(SqlDataSource) SqlDataSource控件代表一个通过https://www.doczj.com/doc/365457981.html,连接到SQL数据库提供者的数据源控件。并且SqlDataSource能够与任何一种https://www.doczj.com/doc/365457981.html,支持的数据库进行交互,这些数据库包括SQL Server、ACCESS、Oledb、Odbc以及Oracle。 SqlDataSource控件能够支持数据的检索、插入、更新、删除、排序等,以至于数据绑定控件可以在这些能力被允许的条件下自动的完成该功能,而不需要手动的代码实现。并且SqlDataSource控件所属的页面被打开时,SqlDataSource控件能够自动的打开数据库,执行SQL语句或存储过程,返回选定的数据,然后关闭连接。SqlDataSource控件强大的功能极大的简化了开发人员的开发,缩减了开发中的代码。但是SqlDataSource控件也有一些缺点,就是在性能上不太适应大型的开发,而对于中小型的开发,SqlDataSource控件已经足够了。 1.建立SqlDataSource控件 https://www.doczj.com/doc/365457981.html,提供的SqlDataSource控件能够方便的添加到页面,当SqlDataSource控件被添加到https://www.doczj.com/doc/365457981.html,页面中时,会生成https://www.doczj.com/doc/365457981.html,标签,示例代码如下所示。 切换到视图模式下,点击SqlDataSource控件会显式【配置数据源……】,单击【配置数据源……】连接时,系统能够智能的提供SqlDataSource控件配置向导,如图8-1所示。 在新建数据源后,开发人员可以选择是否保存在web.config数据源中以便应用程序进行全局配置,通常情况下选择保存。由于现在没有连接,单击【新建连接】按钮选择或创建一个数据源。单击后,系统会弹出对话框用于选择数据库文件类型,如图8-2所示。

combobox.selectedindex

ComboBox.SelectedIndex的使用问题 1、任何时候,SelectedIndex变化都触发SelectedIndexChanged事件。 2.1、重新生成列表(先清空再添加)时:ComboBox显示空,但SelectedIndex保持不变。 2.2、重新绑定列表(ResetBinding)时:ComboBox会努力保持SelectedIndex不变;当SelectedIndex小于等于新列表的最大下标时,CombBox会显示新列表相应位置的项;但当SelectedIndex大于列表的最大下标时,ComboBox会先将SelectedIndex置为新列表的最大下标,然后再重新绑定列表,ComboBox显示新列表中新SelectedIndex处的值。但千万不要以在这种情况下,SelectedIndexChanged 中就能获得与界面一致的值,因为ComboBox在绑定新列表之前重置SelectedIndex 的值,因此,你在SelectedIndexChanged中获得的只是旧列表的值。 3、在初次将列表绑定到数据源时:ComboBox会显示列表中第一个选项,但SelectedIndex仍然是-1。 由于SelectedIndex的以上特性,若ComboBox使用绑定列表并且列表会变化,则在使用SelectedIndexChanged事件实时将ComboBox的显示项映射到内部数据时,必须加以小心。否则将极有可能内部数据与界面显示数据不一致。 我还尝试过使用SelectedValueChanged事件来代替SelectedIndexChanged事件,但是发现SelectedValueChanged事件与SelectedIndexChanged的唯一区别在于:当使用ComboBox列表绑定,用户尚未进行过选择操作时,SelectedValueChanged 会在ComboBox的显示值变化时被触发。只要用户执行过选择操作,该事件就再也不会被触发。猜测SelectedValueChanged应该只在SelectedIndex为-1的时候才有可能被触发。 最终,我还是只好老老实实的用SelectedIndexChanged。为避免出现问题,建议:若要对ComboBox的列表使用绑定,则在初次绑定和重新绑定后,重置SelectedIndex为-1,然后将其置为一个默认值,或尝试将SelectedItem置为旧列表中的选中项。测试证明SelectedItem设置成功时并且该项在新旧列表中位置不同时,SelectedIndexChanged会被触发。 注:2.1,2.2均指列表改变时的特征,2.2为使用数据绑定列表时的情况。

C__WinForm_中ComboBox数据绑定的问题

Visual C#中的数据绑定 2002-02-26 15:49 作者:阿虎 出处:yesky 责任编辑:方舟 五.复杂型组件的数据绑定: 在上面的介绍中,了解到对复杂型组件的数据绑定是通过设定组件的某些属性来完成数据绑定的。首先来介绍一下ComboBox组件的数据绑定. (1).ComboBox组件的数据绑定: 在得到数据集后,只有设定好ComboBox组件的的三个属性就可以完成数据绑定了,这三个属性是:、"DisplayMember"、"ValueMember"。其中"DataSource"是要显示的数据集,"DisplayMember"是ComboBox 组件显示的字段,"ValueMember"是实际使用值。具体如下: ComboBox1.DataSource = myDataSet ; ComboBox1.DisplayMember = "person.xm" ; ComboBox1.ValueMember = "person.xm" ; 注释:此时绑定是Access 2000数据库中"person"表的"xm"字段。由此可以得到ComboBox组件数据绑定的源程序代码(Combo01.cs),本代码操作数据库是Access 2000: public class Form1 : Form { private ComboBox ComboBox1 ; private Button button1 ; private System.Data.DataSet myDataSet ; private https://www.doczj.com/doc/365457981.html,ponentModel.Container components = null ; public Form1 ( ) { file://打开数据链接,得到数据集 GetConnect ( ) ; InitializeComponent ( ) ; } file://清除程序中使用过的资源 protected override void Dispose ( bool disposing ) { if ( disposing ) { if ( components != null )

相关主题
文本预览
相关文档 最新文档