日期:2014-05-19  浏览次数:20792 次

没解决的问题:Panel 放到另一个窗体上(未解决),在帮我看看
我现在有两个窗体:frm_mianFrm和frm_guanli_dwlr,登陆进去是frm_mianFrm主窗体,
点击某个按钮就出来frm_guanli_dwlr   单位录入.在单位录入上有新增和修改按钮,这两个按钮都是放在一个panel1   上的,而且是在单位录入界面上!!
    现在我要问的是:我想在弹出   单位录入   界面时,单位录入的panel1不是显示在单位录入界面上,而是要显示在主窗体上,但是新增\修改按钮又能控制   单位录入   界面
谢谢大虾...

这个方法还不行:
private   void   button1_Click(object   sender,   EventArgs   e)
{
        Form2   vForm2   =   new   Form2();
        panel1.Parent   =   vForm2;
        vForm2.ShowDialog();
        panel1.Parent   =   this;
}
问题所在:
兄弟呀,还是不行呢   .
还有一点就是,我的frm_mianFrm(),也就是你们的   vForm2   是早生成出来了(登陆进去就出来窗体frm_mianFrm),如果还用   vForm2.ShowDialog(),那么就多显示一个     vForm2   了。
    单位录入   的按钮是在   frm_mianFrm   上的,点击一个按钮就出来   单位录入   界面,现在要不   单位录入   上面的一个   panel1   放到   frm_mianFrm   上.谢谢了。.



------解决方案--------------------
在你的frm_guanli_dwlr里写新增和修改方法,用internal修饰符。
//Form1代码(录入窗体)
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

internal void AddButton()
{
//代码
}
}


//Form2代码(主窗体)
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();

}
private void button1_Click(object sender, EventArgs e)
{
((Form1)Application.OpenForms[ "Form1 "]).AddButton();
}
}