求.Net高手 drop down list 放如DataGrid里如何动态绑定? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 给你代码参考:没有经过验证,//初始化窗口private void Form1_Load(object sender, System.EventArgs e){//从数据库中读取一张表string sSql = "select * from stuInfo";DBManager db = new DBManager();DataTable dt = db.QueryDT(sSql);//一定要该名子dt.TableName = "学生表";this.dataGrid1.DataSource = dt;//创建一个DataDrid样式的对象DataGridTableStyle dgts = new DataGridTableStyle();//让样式对象指向你要改的表dgts.MappingName = "学生表";this.dataGrid1.TableStyles.Clear();this.dataGrid1.TableStyles.Add(dgts);//得到你要修改样式的那一列DataGridColumnStyle dgcs = dgts.GridColumnStyles["stuSex"];DataGridTextBoxColumn dgtc = (DataGridTextBoxColumn)dgcs;//创建一个ComboBox对象 并改变他的一些属性ComboBox cbx = new ComboBox();cbx.Items.Add("男");cbx.Items.Add("女");cbx.Cursor = Cursors.Hand;cbx.Dock = DockStyle.Fill;//为ComboBox添加委托事件cbx.SelectionChangeCommitted+=new EventHandler(cbx_SelectionChangeCommitted);//取出那个单元格的文本框,并把ComboBox放在上面dgtc.TextBox.Controls.Clear();dgtc.TextBox.Controls.Add(cbx);dgtc.ReadOnly = true;//为TextBox添加委托事件dgtc.TextBox.Enter +=new EventHandler(TextBox_Enter);}//当选中那个文本框是触发的事件处理方法public void TextBox_Enter(object sender, System.EventArgs e){TextBox txt = (TextBox)sender;string s = txt.Text;ComboBox cbx = (ComboBox)txt.Controls[0];cbx.Text = s;}//当选中ComboBox中某一项时触发的时间private void cbx_SelectionChangeCommitted (object sender, System.EventArgs e){ComboBox cbx = (ComboBox)sender;string item = cbx.SelectedItem.ToString();this.dataGrid1[this.dataGrid1.CurrentCell] = item;} 两种方法http://topic.csdn.net/u/20080516/12/d64d232c-1a5e-4d5a-8847-ed704ae625cf.html 方法太多了,可绑定hashtable,Dirctionary 有关WindowService安装出现的问题 救命啊!listview显示数据报错... C# 对输入的声音进行处理 意外字符$ String与string的区别是什么? 共享一个限制用户输入的TextBox掩码控件 用Windows服务发送邮件,出错:由于目标机器积极拒绝,无法连接。 C# listview 里显示数据再次录入到数据库中 高手请进!水晶报表一个有难度的问题!解决了加100分 静态方法和非静太方法有什么区别? 这句话什么意思啊,谢谢,大家!@ 急等! 页面中间如何调用或创建对象!
private void Form1_Load(object sender, System.EventArgs e)
{
//从数据库中读取一张表
string sSql = "select * from stuInfo";
DBManager db = new DBManager();
DataTable dt = db.QueryDT(sSql);
//一定要该名子
dt.TableName = "学生表";
this.dataGrid1.DataSource = dt;
//创建一个DataDrid样式的对象
DataGridTableStyle dgts = new DataGridTableStyle();
//让样式对象指向你要改的表
dgts.MappingName = "学生表";
this.dataGrid1.TableStyles.Clear();
this.dataGrid1.TableStyles.Add(dgts);
//得到你要修改样式的那一列
DataGridColumnStyle dgcs = dgts.GridColumnStyles["stuSex"];
DataGridTextBoxColumn dgtc = (DataGridTextBoxColumn)dgcs;//创建一个ComboBox对象 并改变他的一些属性
ComboBox cbx = new ComboBox();
cbx.Items.Add("男");
cbx.Items.Add("女");
cbx.Cursor = Cursors.Hand;
cbx.Dock = DockStyle.Fill;//为ComboBox添加委托事件
cbx.SelectionChangeCommitted+=new EventHandler(cbx_SelectionChangeCommitted);//取出那个单元格的文本框,并把ComboBox放在上面
dgtc.TextBox.Controls.Clear();
dgtc.TextBox.Controls.Add(cbx);
dgtc.ReadOnly = true;//为TextBox添加委托事件
dgtc.TextBox.Enter +=new EventHandler(TextBox_Enter);
}//当选中那个文本框是触发的事件处理方法
public void TextBox_Enter(object sender, System.EventArgs e)
{
TextBox txt = (TextBox)sender;
string s = txt.Text;
ComboBox cbx = (ComboBox)txt.Controls[0];
cbx.Text = s;
}//当选中ComboBox中某一项时触发的时间
private void cbx_SelectionChangeCommitted (object sender, System.EventArgs e)
{
ComboBox cbx = (ComboBox)sender;
string item = cbx.SelectedItem.ToString();
this.dataGrid1[this.dataGrid1.CurrentCell] = item;
}
http://topic.csdn.net/u/20080516/12/d64d232c-1a5e-4d5a-8847-ed704ae625cf.html