Panel传值问题
是这样的,我在Winform窗口上布置了一个Panel,然后我另外做了两个用户控件,一个作为登入页面,另一个作为成功登入页面。现在程序运行的时候,我先让Panel加载了登入页面,然后和数据库比对用户名密码,这步没问题,然后,在这个用户控件中我在里面放了一个登入按钮,我想让它被点击的时候,窗口能够收到用户控件的消息,然后擦除Panel当前的登入页面,加载成功页面的用户控件,该如何做比较好?
我试了一下在窗口里写一个public的方法,但是好像没有成功,刚上手C#,代码写不好,请各位多多指导。
附:
解释一下,login和examselect是两个用户控件,WorkArea就是Panel的name,nextpanel就是我写的方法,我的想法是在login这个用户控件中,加了一个button,然后click事件就是调用这个nexpanel的方法,括号里面的string仅仅是用来判断现在加载的是login还是examselect用户控件。
[解决办法]
你为什么要做两个用户控件呢?把两个页面做成一个用户控件,只要判断panel的显示和隐藏问题就好了啊。
[解决办法]
foreach (UserControl uc in this.WorkArea.Controls)
{
uc.Dispose();
}
->
foreach (Control c in this.WorkArea.Controls.Cast<Control>().ToList())
{
this.WorkArea.Controls.Remove(c);
}
[解决办法]
集中方法,通过public的接口通过实例去访问,或者通过自定义事件委托去交互