当前位置:编程学习 > C#/ASP.NET >>

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的修改时间中把数据源对应的列修改掉

上一个:C#重绘窗体
下一个:c#桌面提醒功能

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,