不能从任务中修改datagridview (c#)
本文关键字:datagridview 修改 任务 不能 | 更新日期: 2023-09-27 18:15:47
我的场景:
我已经(在类外)声明了委托:
public delegate void add_row_item(string category, string name, string address, string locality, string cap, string tel, string fax, string www, string email_results, string business_url, string map_query, DataGridView table);
然后我有这个功能,添加一个行到我的datagridview上的主要形式
public void update_add_row_item(string category, string name, string address, string locality, string cap, string tel, string fax, string www, string email_results, string business_url, string map_query, DataGridView table)
{
table.Rows.Add(category, name, address, locality, cap, tel, fax, www, email_results, business_url, map_query);
}
但是当我在任务中调用方法时,我得到一个"方法名称预期"错误:
results_grid.Invoke(new add_row_item(update_add_row_item(category, name, address, locality, cap, tel, fax, www, email_results, business_url, map_query, results_grid)));
我的代码有什么问题?谢谢!
这是因为当你初始化一个委托时,它希望你说你要指向哪个函数,而不是整个函数调用本身。因此,您需要初始化委托,然后使用参数跟踪Invoke调用的其余部分,如下所示:
results_grid.Invoke(new add_row_item(update_add_row_item),
category, name, address, locality, cap, tel, fax, www, email_results, business_url, map_query, results_grid
);
另外,查看这个链接了解更多关于不同方法的信息:
控制。调用输入参数