某一些数据库存的是编码,另有一个字典表存编码、名称。 想在datagridview显示的时候把编码显示成名称。
如果是在设计视图下直接添加的查询这种,可以通过编辑列选项,把某一列改为DataGridViewComboBoxColumn并且设置设置diaplaymember 和 valuemember 属性来实现。
但是我现在这个datagridview是通过语句动态绑定dataset的
//DataTable dt = new DataTable( );
//dt = db.dataQueryUseOracle( sqltext );
//dgEmployee.DataSource = dt;
这样查询出结果之后,我如何通过写代码来实现这个功能呢
如果是在设计视图下直接添加的查询这种,可以通过编辑列选项,把某一列改为DataGridViewComboBoxColumn并且设置设置diaplaymember 和 valuemember 属性来实现。
但是我现在这个datagridview是通过语句动态绑定dataset的
//DataTable dt = new DataTable( );
//dt = db.dataQueryUseOracle( sqltext );
//dgEmployee.DataSource = dt;
这样查询出结果之后,我如何通过写代码来实现这个功能呢
DataGridViewComboBoxColumn column = new DataGridViewComboBoxColumn();
column.HeaderText = "列标题";
column.Name = "column";
dataGridView1.Columns.RemoveAt(1); //示例:第二列
dataGridView1.Columns.Insert(1, column);
联合查询不行?
公历→农历
2013年06月07日
双子座
二〇一三年四月廿九
癸巳〖蛇〗 丁巳月 甲辰日 甲戌时
今属:木;五行:水火木土;缺:金。
纳音五行:长流水。
column.DataSource=dt;
column.DataPropertyName="编码字段名";
column.DisplayMember="编码名字段名";
column.ValueMember="编码字段名";
谢谢两位
string sqltext_ks = "select mc, bm from table";
DataTable ks = new DataTable();
ks = db.dataQueryUseOracle(sqltext_ks); for (int i = 0; i < dgEmployee.RowCount - 1; i++)
{
DataGridViewComboBoxCell column = new DataGridViewComboBoxCell();
column.DataSource = ks;
column.DisplayMember = "mc";
column.ValueMember = "bm";
dgEmployee.Rows[i].Cells[2] = column;
};