C#中的下拉列表comboBox问题

我加了this.comboBox1.DrawMode=System.Windows.Forms.DrawMode.OwnerDrawVariable;后,SqlConne... 我加了this.comboBox1.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawVariable;后,
SqlConnection conn = new SqlConnection(@"Data Source=./sqlexpress;Initial Catalog=Truck;Persist Security Info=True;User ID=sa;");
SqlDataAdapter adapter = new SqlDataAdapter("SELECT PartNo, NewPart from AutoPart", conn);
DataSet ds = new DataSet();
adapter.Fill(ds);
Dictionary<string, string> d = new Dictionary<string, string>();
comboBox1.DataSource = ds.Tables["cc"];
comboBox1.DisplayMember = "PartNo";
comboBox1.ValueMember = "NewPart";
结果下拉列表显示为System.Data.DataRowView了,倘若System.Windows.Forms.DrawMode.Normal就可以。但是我要用的是上面的那种。该怎样让其正常显示呢
上面发的应为 DataSet ds = new DataSet();
adapter.Fill(ds);
comboBox1.DataSource = ds.Tables[0];
comboBox1.DisplayMember = "PartNo";
comboBox1.ValueMember = "NewPart";意思是一样的
展开
 我来答
谈指菩提
2010-05-29 · TA获得超过2405个赞
知道大有可为答主
回答量:1073
采纳率:0%
帮助的人:1851万
展开全部
处理comboBox1的DrawItem事件,在相应处理函数里面绘制每个Item。
比如:
this.comboBox1.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.comboBox1_DrawItem);
private void comboBox1_DrawItem(object sender, DrawItemEventArgs e)
{
e.DrawB();
e.DrawFocusRectangle();
e.Graphics.DrawString(comboBox1.Items[e.Index].ToString(), e.Font, new SolidBrush(e.ForeColor), e.Bounds);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式