永发信息网

C#中两个窗体间的函数调用

答案:4  悬赏:0  手机版
解决时间 2021-11-22 15:49
C#中两个窗体间的函数调用
最佳答案
你已经跨线程调用控件了,当然无作用也不报错。在Form1中调用当然可以,但在Form2中(另一线程)调用就无效。
delegate ListViewItemClearDelegate();
ListViewItemClearDelegate _dListViewItemClear;
public void Form1_Load()
{
_dListViewItemClear=new ListViewItemClearDelegate(ListViewItemClear);
}
NetPlay()
{
MessageBox.Show("哈哈");//正常显示
ListViewItemClear();
}
public void ListViewItemClear()
{
if(listView1.InvokeRequired)
{
listView1.Invoke(_dListViewItemClea);
}
else
{
listView1.Items.Clear();
}

}
解决思路就这样,代码没有调试过,只是凭印象写的,你试着编译一下。
全部回答
凡是窗体间的通信都是采用事件(或者委托:一种特殊的事件)的机制来完成的,因为这才是最佳的方案。像你这样直接调用方法即便有时没有出错也是后患无穷的。
两个窗口间传值用owner,设置一个窗口A是另外一个窗口B的owner,在把窗口B中的数据传到A中就要把窗口A中的空间的Modifiers设置为public,然后在A中定义一个B,就可以让B中的数据传到窗口A中的控件上
这个问题很好解决的。。。在programe.cs文件中Application.Run(from)的时候,把form在programe里面把form设置成为静态的窗体

publi static form1 form=new form1();

Application.Run(form1);

之后再运行from2之后,就可以在form2里面通过调用 programe.form.(方法名)......来调用 from1里面公开的方法
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
传世怎么可以双开
女儿名字 梁茜 和梁倩哪个好
女娲长什么样子?
小规模纳税人增值税附加税率是多少?0.72?
我爱你王诗媛,,,,可是你却不知道,,,我
李雷和韩梅梅的故事
幸福树的叶子突然这样了,都耷拉着叶子,要死
如何在第三台电脑上登陆
心经照着书念有用吗
怎么做蛤蜊炖蛋才好吃
#暗黑3#游戏怎么样啊?好玩么?
叛逆期是不是从12~20岁
刚刚发现
故意伤害他人面部刀伤怎么赔付?
TPV有哪些优缺点呀
推荐资讯
异性问自己年龄时要说实话吗?想追某个心仪女
请问,82年.农历女1月24日,上午9点到10点的
我跟香港人结婚已经四年了,当收到去香港定居
入深户千万别搞砸代办深户一般多少钱现在不
中联村地址有知道的么?有点事想过去!
上帝之城完整版百度云
我想知道平乡那有招聘司机的?
好看的女尊种田文~~~
尿量每次只几毫升?正常吗?几毫升是不是有问
女朋友的表姐请我吃铁板烧代表什么意思
如何巧算3524+2345+5432+4253
安阳康捷商贸有限公司怎么样?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?