c# dataGridView联动输入
请问上面要怎么才可以实现?叫什么?
谢谢大家!
请问上面要怎么才可以实现?叫什么?
谢谢大家!
答案:
private void gridview1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 2)//双击标题,弹出备注选择列表
{
/*非重点*/
string tempstrCon = tbConnStr.Text;
OleDbConnection tempmyConn = new OleDbConnection(tempstrCon);
string strSQL = "select distinct t.comments as title from user_col_comments t where t.column_name=upper('" + (sender as DataGridView).Rows[e.RowIndex].Cells[1].Value + "') and t.comments is not null ";
DataSet ds = new DataSet();
OleDbDataAdapter tempmyCommand = new OleDbDataAdapter(strSQL, tempmyConn);
tempmyCommand.Fill(ds);
tempmyConn.Open();
/*非重点*/
TitleList tlf = new TitleList(ds.Tables[0]); //同过已有数据集实例化弹出窗体
if (tlf.ShowDialog(this) == DialogResult.OK)
{
//将弹出窗体选定的值引用回来,我这里用的是listbox控件,改成别的也简单
(sender as DataGridView).Rows[e.RowIndex].Cells[e.ColumnIndex].Value = (tlf.Controls["listbox1"] as ListBox).SelectedValue;
}
}
}……可能我想的不到位……
我的想法是:
再添加一个panel 里边放歌gridview或类似控件……然后 做个Click事件 点了那个就显示这个列表 然后根据选择做反显……
大概思路……具体的未想~
这是我这两天做的 用 datagridview 接受 需要现实的表的数据 并在点击按钮的时候出现 双击 可选择到需要的数据 并隐藏 datagridview这个灰常简单
不知道你的Grid的数据源是怎么设置的
不管怎样,吧他的数据源设置成为一个DataTable(当然了,要定义为类的成员)
比如 DataTable dt = new DataTable();
dt.Columns.Add("OrderList");
dt.Columns.Add("OrderListNo");
dt.Columns.Add("MID");
grid.DataSource = dt;
吧grid中的后面两列的FieldName都设置为MID就可以了
但是,这样做的话,这两列就不可以单独进行修改了
如果需要单独修改,那就得把两列的FieldName设置的不一样,然后再Grid的修改时间中把数据源对应的列修改掉