多列组合框






4.26/5 (24投票s)
2005年4月6日
2分钟阅读

120597

2325
一个 VB.NET 中的多列组合框。
引言
这是一个简单的多列组合框,具有从表格加载数据以及通过单击列标题对组合框中的数据进行排序的功能。在这个 UserControl
中,我使用了 Windows Forms 控件(ComboBox
和 ListView
)和几行代码。
这个用户控件中的属性和方法如下
属性
ColumnSize
用于指定组合框的列大小。
ColumnTitle
用于指定组合框的列标题。
DataFieldList
用于存储所选项目的的数据。
例如:在演示组合框中,有两列,
EmployeeCode
和Name
。当我们从组合框列表中选择一个项目时,我们希望将员工代码存储在数据库中,并将姓名作为文本在控件中显示。此属性用于保存员工代码。DataFieldToDisplay
选择后在控件中显示的列的项目。
DataSource
如果我们想从数据库加载数据,可以使用此属性。
示例
Dim CnStr As String Dim Appcn As New System.Data.OleDb.OleDbConnection() Dim Da As New System.Data.OleDb.OleDbDataAdapter() Dim Ds As DataSet CnStr = "Provider=Microsoft.Jet.OLEDB.4.0;DataSource=D:\Data\Employee.MDB" Appcn = New System.Data.OleDb.OleDbConnection(CnStr) Appcn.Open() Da = New System.Data.OleDb.OleDbDataAdapter("Select * From Employee", Appcn) Ds = New DataSet("Combo") Da.Fill(Ds, "Combo") MulCol.DataSource = Ds.Tables("Combo")
ItemsToDisplay
如果我们需要添加一些不从数据库来的项目到组合框中,可以使用此属性。这是一个设计时属性。如果我们需要多列,则需要用逗号 (,) 分隔它们。例如
RAC001,RACHID
在上面的例子中,‘
RAC001
’ 是一个员工代码,RACHID
是员工姓名。因此,在组合框中,它将显示为两列。RowsToDisplay
用于指定要在下拉列表中显示的行数。
文本
在这个属性中,将存储所选项目。
值
此属性将存储 ‘
DataFieldList
’ 的值。
方法
AddItem
此方法用于在运行时向组合框中添加项目。列必须用逗号 (,) 分隔。例如
MulCol.AddItem("RAC001,RACHID")
属性页
如何使用此控件
将此控件添加到项目中。按照上述说明在属性表中设置属性。将以下代码放置在窗体加载事件处理程序中。
MulCol.LoadData() '---- This is the code to load the combo
假设 UserControl
的名称是 ‘MulCol
’。
注意:如果您不打算从表格加载数据,请不要忘记在 ‘ItemsToDisplay
’ 属性中添加数据。如果您需要添加多列,则用逗号 (,) 分隔第一个项目和后续项目。
有关更多详细信息,您可以查看演示应用程序。它是一个自解释的应用程序。用户控件也是一个自解释的控件。并且在需要注释的地方,我已经放置了所需的注释。