C# 从一个子窗体填充到另一个子窗体
在我的项目中,我有一个mdi容器C# 从一个子窗体填充到另一个子窗体,c#,mdi,C#,Mdi,在我的项目中,我有一个mdi容器mdiMother,其中有两个childform(mdiChild1和mdiChild2)。mdiChild1有一个listview(模式视图详细信息)。mdiChild2有一个按钮,其目标是在mdiChild1中填充listview 我做了一些和平的代码。我将此代码复制到mdiChild1,创建一个按钮,尝试一下,它就可以工作了(意思是:我看到listview填充) 我的问题: 当我在mdiChild2中按下按钮时,我的列表视图中的代码与mdiChild1中的代
mdiMother
,其中有两个childform
(mdiChild1和mdiChild2)。mdiChild1
有一个listview
(模式视图详细信息)。mdiChild2
有一个按钮,其目标是在mdiChild1
中填充listview
我做了一些和平的代码。我将此代码复制到mdiChild1
,创建一个按钮,尝试一下,它就可以工作了(意思是:我看到listview
填充)
我的问题:当我在
mdiChild2
中按下按钮时,我的列表视图中的代码与mdiChild1
中的代码不相同。您必须从mdichild
控制子控件
从每个mdiChild
创建static
实例,然后当您要从每个mdiChild
实例调用方法时,必须从这些static
实例中使用
像这样:
public class mdiMother{
public static mdiChild1 ch1;
public static mdiChild2 ch2;
public mdiMother(){
ch1 = new mdiChild1();
ch2 = new mdiChild2();
}
}
public class mdiChild1{
public void Do(){
// fill list
}
}
public class mdiChild2{
public void CallMdiChild1(){
mdiMother.ch1.Do();
}
}
谢谢大家。我解决了我的问题,我发现这太愚蠢了。这样它就没有填充:不要提到好的形式。为了完成此工作,我对活动mdi子项进行了引用。。。这就是工作:)
谢谢你的帮助。。。还有很多要感谢艾哈迈德,他给了我找到解决问题的好方法:p在任何人都能帮助你之前,你需要添加有效和无效的代码。请向我们展示你的代码。您实际上是如何填充列表视图的?您是如何从mdiChild2
访问mdiChild1
中的ListView
控件的?@odyss jii看看那里@QuintonBernhardt看看那里好的,我明白了。所以我没有做的事情是:没有向MDI母亲声明静态。我只是声明静态实例并使用它。我的问题还是一样。代码的一些和平:public void addItemToDownload(string item){ListViewItem onteem=new ListViewItem(item);onteem.SubItems.Add(“en attentite”);listDownload.Items.AddRange(new ListViewItem[]{Iteem});}是我调用的代码,用于填充listview。。。我在这个表单中添加了一个buton,这个方法是有效的。当我从mdiChild2通过MDIMather的静态实例调用它时。。。不要工作。。。怎么了?或者我可以从mdiChild1=newMDIChild1()调用mdiChild1;mdChild1.MdiParent=此;mdChild1.Show();您不能在任何地方创建mdiChilds的新实例。如果这样做,则在填充listview中会出现问题。共享代码以解决此问题。此页中不存在任何内容