
(1)在Visual Studio中新建一个“Windows 窗体应用程序”项目
(2)在项目中添加一个类MyItem。这个类有两个用途:
在ComboBox中显示
用于检索被选中项的值
MyItem.cs代码
namespace WindowsFormsApplication1
{
class MyItem
{
public MyItem(string name, int value)
{
Name = name
Value = value
}
public string Name { getprivate set}
public int Value { getprivate set}
}
}
(3)在Form1上布置一个ComboBox、一个Label
(4)窗体代码 Form1.cs
using System
using System.Collections.Generic
using System.Windows.Forms
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent()
}
private void Form1_Load(object sender, EventArgs e)
{
// 清空lable1
label1.Text = string.Empty
// 列表集合将作为comboBox1的数据源
List<MyItem>list = new List<MyItem>()
list.Add(new MyItem("张三", 10))
list.Add(new MyItem("李四", 20))
list.Add(new MyItem("王五", 30))
// 绑定
comboBox1.DataSource = list
// 在comboBox1中显示MyItem的Name属性
comboBox1.DisplayMember = "Name"
}
// 获取被选中项的Value值
private void comboBox1_SelectedIndexChanged(
object sender,
EventArgs e)
{
// 将被选中的项目强制转换为MyItem
MyItem item = comboBox1.SelectedItem as MyItem
// 显示被选中项的值
label1.Text = string.Format("Value = {0}", item.Value)
}
}
}
(5)运行,程序启动后,改变comboBox1选择
for I := 1 to 6 dowith TComboBox.Create(self) do begin
Name :='jb_xx1_' + InttoStr(I)
Parent := Self.TabSheet2
Top := 27*(i-1)+3
Left := length(jb_txt[i])*6+30
Height := 2
font.Name := 'Arial'
font.Size :=8
// 添加数据
for j:1 to ADOQuery1.RecordCount do
begin
Items.Add(ADOQuery1.FeildByName('comboboxItems').AsString)
end
// 添加结束,将默认显示设为显示第一项
ItemIndex := 0
show
end
上面是从数据库读取数据添加(记得打开和关闭连接就行)。要是有固定的值就更简单了,直接添加就OK。你都创建完控件了,添加数据不很简单吗。你是还有什么要求吗
以users表为例,有三个字段,自增长的编号id,int类型;名称name,nvarchar类型,密码pwd,nvarchar类型首先在vs2005中引入using System.Data.SqlClient命名空间
/// 查询
/// </summary>
/// <returns></returns>
public DataTable Select()
{
SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESSInitial Catalog=TestIntegrated Security=True")//Initial Catalog后面跟你数据库的名字,如果你的SqlServer服务器名称后面不带SQLEXPRESS,那么Data Source=.
conn.Open()
string sql = "select * from users"
SqlCommand cmd = new SqlCommand(sql, conn)
SqlDataAdapter sda = new SqlDataAdapter(cmd)
DataTable dt = new DataTable()
sda.Fill(dt)
conn.Close()
cmd.Dispose()
return dt
}
方法写好后,在form窗体中拖一个comboBox,然后在Load方法中
private void Form1_Load(object sender, EventArgs e)
{
comboBox1.DataSource = Select()//绑定数据
comboBox1.DisplayMember="name"//下拉列表中显示的是你数据库中name的值
comboBox1.ValueMember ="id"//这个一般绑定的是id,增加删除之用。这个属性也可不设
}
这样一运行,comboBox中就会显示数据了!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)