窗体下两个dgv内的数据互相移动


从左,向右移动按钮下的代码:

 string[] selectedContents = new string[dgvComponentList.SelectedRows.Count];//dgvComponentList为左侧dgv的名字
                    int index = 0;
                    Model.ComponentListInfo model = new BT.Assist.Model.ComponentListInfo();
                    foreach (DataGridViewRow dgvr in dgvComponentList.SelectedRows)//dgvComponentList为左侧dgv的名字
                    {
                        model.Projectname = cboProjectName.Text.Trim();
                        model.ProccessName = dgvr.Cells[2].Value.ToString();
                        model.Deviceid = dgvr .Cells[3].Value.ToString();
                        model.DeviceName = dgvr .Cells[4].Value.ToString();
                        model.DevicePower = dgvr .Cells[5].Value.ToString();
                        model.Breaker = dgvr .Cells[6].Value.ToString();
                        model.BreakerAssist = dgvr .Cells[7].Value.ToString();
                        //此处省略其他字段
                        index++;
                        BLL.ComponentList bll = new BT.Assist.BLL.ComponentList();
                        BLL.DeviceList blldevice = new BT.Assist.BLL.DeviceList();
                        Model.DeviceListInfo modeldevice = new BT.Assist.Model.DeviceListInfo();
                        if (bll.addComponentList(model) >= 1)
                        {
                            modeldevice.Id = System.Convert.ToInt32(gdvr.Cells[1].Value);
                            blldevice.UpdateState(modeldevice);
                            Search();//刷新右侧dgv方法
                            dgvList();//刷新左侧dgv方法
                        }
                        else
                        {
                            MessageBox.Show("失败", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                    }

从右,向左移动的代码一样的写法。

根据自己的数据表和功能来写DAL内的增删改方法。

您可以通过以下步骤实现: 1. 在DataGridView控件的ContextMenuStrip属性中添加一个右键菜单。 2. 在右键菜单中添加一个菜单项,并设置其Click事件,如下所示: ``` private void menuItem_Click(object sender, EventArgs e) { // 获取选中的行 DataGridViewRow selectedRow = dataGridView1.SelectedRows[0]; // 获取选中行的数据 string data = selectedRow.Cells[0].Value.ToString(); // 跳转到新窗体 Form2 form2 = new Form2(data); form2.Show(); } ``` 3. 在菜单项的Click事件中,获取选中的行的数据,然后跳转到新的窗体。 完整代码示例: ``` private void dataGridView1_MouseClick(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { // 在右键菜单中添加一个菜单项 ContextMenuStrip menu = new ContextMenuStrip(); ToolStripMenuItem menuItem = new ToolStripMenuItem("跳转到新窗体"); menuItem.Click += new EventHandler(menuItem_Click); menu.Items.Add(menuItem); // 设置右键菜单 dataGridView1.ContextMenuStrip = menu; } } private void menuItem_Click(object sender, EventArgs e) { // 获取选中的行 DataGridViewRow selectedRow = dataGridView1.SelectedRows[0]; // 获取选中行的数据 string data = selectedRow.Cells[0].Value.ToString(); // 跳转到新窗体 Form2 form2 = new Form2(data); form2.Show(); } ``` 注意:在跳转到新窗体时,可以将选中行的数据作为参数传递给新窗体。在新窗体中,可以根据传递的数据进行相应的处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值