【发布时间】:2021-10-03 19:16:02
【问题描述】:
在我的应用程序中,我以编程方式生成了一堆 DataGridView。我可以向其中添加/删除行并从中检索所有数据并将数据复制到另一个 DataGrid 中。
例如当我创建它时
public void Example(TabControl tab)
for(int i=0;i<tab.TabCount;i++)
{
tab.TabPages.Add("Panneau " + tab.TabCount);
DataGridView panGridView = new DataGridView();
panGridView.Name = "panGridView_" + tab.TabCount;
panGridView.Location = new System.Drawing.Point(0, 0);
panGridView.RowTemplate.Height = 24;
panGridView.Size = new System.Drawing.Size(1375, 458);
panGridView.Columns.Add("id", "id");
panGridView.Columns.Add("part_code", "part_code");
panGridView.Columns[0].Width = 100;
panGridView.Columns[1].Width = 150;
panGridView.Visible = true;
panIndex.Items.Add(tab.TabCount - 1);
tab.TabPages[tab.TabCount - 1].Controls.Add(panGridView);
}
现在,我想将 Method 附加到此控件。我认为最好的方法是在初始化控件时附加它。例如,我会附加一个这样的方法
public void Action(DataGridViewCellMouseEventArgs e)
{
if(e.RowIndex==2)
{
MessageBox.Show("Hello");
}
我尝试了很多,但不知道怎么做。
谢谢
【问题讨论】:
-
为什么不用委托的事件处理程序?
-
你能告诉我怎么做吗?请举个例子。也许这是正确的方法。谢谢
-
您是否创建过按钮单击处理程序?在设计器中的表单上放置一个按钮。您的表单的
.cs文件将打开一个点击处理程序消息。同样重要的是,您表单的.designer.cs文件将添加一行,将您的处理程序订阅到按钮的单击事件。现在选择按钮,转到属性窗格并单击事件按钮。您将看到新的点击处理程序。选择其他一些事件。单击名称旁边的空白单元格,然后按 Enter。您将使用新的处理程序打开。现在单击您的 DGV 并查看它的事件。选择你感兴趣的,然后从那里开始 -
我认为你需要了解事件处理的概念。 This is a good intro. 和 this one 正是你需要做的
-
例如:TabControl.Click += ClickEvent.
标签: c# winforms datagridview