WinForm的ComboBox问题

friend43 2008-04-28 08:07:55
问题,ComboBox已绑定datatable,但需要再加一行数据:“请选择...”。不知道怎么加
我想用ComboBox.Items.Insert(0,?),但问号处点不出相应的对象名。请知道解决方法的朋友帮我下,谢谢先!
...全文
426 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
trueideal 2008-04-30
  • 打赏
  • 举报
回复
看样子不少人用ds直接绑呀,我一般用add.item一行行来做,先做一个item类,就ok了。
knowledge_Is_Life 2008-04-30
  • 打赏
  • 举报
回复
都是很好的建议! 值得学习
live_7sky 2008-04-28
  • 打赏
  • 举报
回复


一: ComboBox 经验总结[动态绑定数据之后,静态添加一条数据]

DropDowStyle=DropDown 允许用户键入列表项的文本框,为默认值
DropDownSysle=DropDownList 显示一个项列表,用户可从中选择一项

A: 在属性 Iitems 添加项

CobShow.SelectedIndex 选择项的索引
CobShow.SelectedItem 选择项的文本
CobShow.SelectText 空值
CobShow.SelectValue 报错...
CobShow.Items[CobShow.SelectedIndex].ToString() 选择项的文本

B:在程序中添加 CobShow.Item.Add() 结果和上面一样

C: A B 两种方式同时添加 结果和上面一样

D:动态绑定数据

CobShow.SelectedIndex 选择项的索引
CobShow.SelectedItem System.DataRow.DefaultView
CobShow.SelectText 空值
CobShow.SelectValue 选择项的 VALUE 值
CobShow.Text 选择项的 文本 值
CobShow.Items[CobShow.SelectedIndex].ToString() System.DataRow.DefaultView

E: 如果先通过属性或者程序 写入了值之后,动态绑定的时候 会清空原来的值

F: 如果动态绑定数据之后,在通过程序 CobShow.Item.Add('zhi'); 报错...[解决办法如下]

FSubject 是要显示的文本,FTech 是要传递的值

DataTable dt = cboShow.DataSource as DataTable;
DataRow dr = dt.NewRow();

dr["FSubject"] = "---Text---";
dr["FTech"]="---Value---";

dt.Rows.InsertAt(dr, 0); 插入到第一行
dt.Rows.Add(dr); 追加到最后一行

解释: dr["FSubject"],dr["FTech"] 是一行中的2列,赋值之后就完整的添加一行
CobShow.Text="---Text---",CobShow.SelectValue="---Value---"

baihe_591 2008-04-28
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 live_7sky 的回复:]


一: ComboBox 经验总结[动态绑定数据之后,静态添加一条数据]

DropDowStyle=DropDown 允许用户键入列表项的文本框,为默认值
DropDownSysle=DropDownList 显示一个项列表,用户可从中选择一项

A: 在属性 Iitems 添加项

CobShow.SelectedIndex 选择项的索引
CobShow.SelectedItem 选择项的文本
CobShow.SelectText 空值
CobShow.SelectValue …
[/Quote]
baihe_591 2008-04-28
  • 打赏
  • 举报
回复
comboxbox在数据绑定之后是不能修改项的。
我同意楼上的。
live_7sky 2008-04-28
  • 打赏
  • 举报
回复


一: ComboBox 经验总结[动态绑定数据之后,静态添加一条数据]

DropDowStyle=DropDown 允许用户键入列表项的文本框,为默认值
DropDownSysle=DropDownList 显示一个项列表,用户可从中选择一项

A: 在属性 Iitems 添加项

CobShow.SelectedIndex 选择项的索引
CobShow.SelectedItem 选择项的文本
CobShow.SelectText 空值
CobShow.SelectValue 报错...
CobShow.Items[CobShow.SelectedIndex].ToString() 选择项的文本

B:在程序中添加 CobShow.Item.Add() 结果和上面一样

C: A B 两种方式同时添加 结果和上面一样

D:动态绑定数据

CobShow.SelectedIndex 选择项的索引
CobShow.SelectedItem System.DataRow.DefaultView
CobShow.SelectText 空值
CobShow.SelectValue 选择项的 VALUE 值
CobShow.Text 选择项的 文本 值
CobShow.Items[CobShow.SelectedIndex].ToString() System.DataRow.DefaultView

E: 如果先通过属性或者程序 写入了值之后,动态绑定的时候 会清空原来的值

F: 如果动态绑定数据之后,在通过程序 CobShow.Item.Add('zhi'); 报错...[解决办法如下]

FSubject 是要显示的文本,FTech 是要传递的值

DataTable dt = cboShow.DataSource as DataTable;
DataRow dr = dt.NewRow();

dr["FSubject"] = "---Text---";
dr["FTech"]="---Value---";

dt.Rows.InsertAt(dr, 0); 插入到第一行
dt.Rows.Add(dr); 追加到最后一行

解释: dr["FSubject"],dr["FTech"] 是一行中的2列,赋值之后就完整的添加一行
CobShow.Text="---Text---",CobShow.SelectValue="---Value---"

sjm2003 2008-04-28
  • 打赏
  • 举报
回复
如果你是想,在尚未选择的时候,让文本框内显示请选择,你可以在写上

数据加载......
combobox1.text="请选择.....";

在SelectIndexChanged 写上

if(combobox1.text=="")
{
combobox1.items.add("请选择.....");
}
sjm2003 2008-04-28
  • 打赏
  • 举报
回复
一般都用cob.Items.Add("1111");最后1项
viki117 2008-04-28
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sjm2003 的回复:]
可以向datatable内插入一行
[/Quote]
这个简单好用
sjm2003 2008-04-28
  • 打赏
  • 举报
回复
可以向datatable内插入一行
yilanwuyu123 2008-04-28
  • 打赏
  • 举报
回复
点什么对象名? insert没有一个重载后面是加STRING的么?

110,502

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧