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

c# 用linq方法怎么通过datagridview修改数据?

如题

主要是我想在某一大堆数据里面修改特定行的数据,用linq的方法要怎么样修改?

因为我是通过datagridview来查询出数据的,然后如果看见某行数据有问题的话

需要修改,这个时候怎么可以做到针对某行数据来修改?

追问:如果我是在一个datagrid可以分别查询两个不同的表的内容呢?

譬如我现在是在一个datagrid,通过按钮来确认要查询的内容,这个内容分别是收入和支出

然后datagrid才显示内容才进行修改,

这个也是一样做法的吗?

答案:假设你的Linq文件已经生成(数据库文件),同时你的datagrid已经是AllowEditing=True(允许编辑,这样你双击就可以编辑)。并且存在一个主键(主键不允许修改,把主键列的ReadOnly设置为True)

然后在datagrid的CellEndEdit事件这样编写:

 private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            string columnname = dataGridView1.Columns[e.ColumnIndex].DataPropertyName;
           
            //假设第一列是id主键,
            int id = (int)dataGridView1.Rows[e.RowIndex].Cells[0].Value;

            //先用生成的linq对象找到id,var r = from xx…… where xx.Id == id

            //然后判断columnname是什么
            // if columnname=="Name"
            // {
            //      r.Name = dataGridView1.Rows[e.RowIndex].Cells[索引列序号].ToString();
            // }

 

          //最后调用datacontext的SubmitChanges,然后重新将datagrid的DataSource设置为null,并且重新绑定DataSource到Linq的那个数据源上即可。
        }

上一个:C#怎么设置服务器空间button不刷新页面呢
下一个:C#怎么把水晶报表显示在crystalReportViewer控件中

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