gpt4 book ai didi

c# - 如何从尚未创建的控件创建事件?

转载 作者:太空宇宙 更新时间:2023-11-03 13:05:37 26 4
gpt4 key购买 nike

我的程序是创建数据 GridView 程序,用户可以创建动态列,如行、列、面板(面板是面板的数量),因此用户也可以标记它,据我所知,我可以用 CurrentCell.Style.BackColor 标记单元格

当我生成 datagridview 时,我已经为其分配了名称但是!!!!它不能使用新的 datagridvieweventhandler 命令,所以我不能对每个 datagridview 做任何事情

所以这是我的 Datagridview 生成代码

    string[] Panelname = { "One","Two","Three","Four","Five"};
for(i=0;i<Panelname.length;i++){
Generate(Panelname[i],a,b)}

DataGridView generate(string name,int columns,int rows)
{
int i;
Control Gen;
Control LB;
LB = new Label();
LB.Text = "Panel : "+name;
LB.Location = new Point(50 + 120 / (c - 1) + 900 / c , 315);
LB.BackColor = Color.Silver;
Gen = new DataGridView();
Gen.Name = name.ToString();
Gen.Size = new Size(900/c,300 );
Gen.Location = new Point(120 / (c ) + 900 / c, 0);
DataGridView CH = (DataGridView)Gen;
CH.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
CH.CellClick += new DataGridViewCellEventHandler(CH_CellClick);
CH.Location = new Point(0+locate, 0);

for (i = 1; i <= columns; i++)
{
CH.Columns.Add("", "");

}
for (i = 1; i < rows; i++)
{

CH.Rows.Add("", "");

}

dataGridView1.Controls.Add(LB);
dataGridView1.Controls.Add(CH);

return null;


}

如何为我动态创建的每个数据 GridView 创建事件处理程序?

谢谢你的好意

最佳答案

创建您的数据 GridView 。

for (int i = 0; i < 10; i++)
{
DataGridView d = new DataGridView();
d.MouseClick += dataGridView_MouseClick;
}

使用添加处理程序方法。

private void dataGridView_MouseClick(object sender, MouseEventArgs e)
{
// Use sender to determine which datagridview fired the event
}

关于c# - 如何从尚未创建的控件创建事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30886321/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com