首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

动态加载UserControl的有关问题

2012-01-02 
动态加载UserControl的问题一个WinForm一个LoginUserControl 一个ListUserControl想法是这样的 Form_Load

动态加载UserControl的问题
一个WinForm 一个LoginUserControl 一个ListUserControl
想法是这样的 Form_Load 的时候 controls.add(LoginUserControl) 
如果登录成功就controls.clear();并且controls.add(ListUserControl)
现在的问题就是登录成功了LoginUserControl确实被clear()掉了 但是ListUserControl没有加进去(没显示)
下面是代码部分

C# code
public Form()        {            InitializeComponent();            s.SatusChange += new SDK.SatusChangedEventHandler(SatusChange);  // 登录对象s注册事件        }private void SatusChange(object sender, SDK.SatusChangedEventArgs e)  //登录状态改变        {            if (!IsLogon && e.Statu == SDK.Status.Logon)  //bool IsLogon标记是否已经登录            {                IsLogon = true;                this.Controls.Clear();                this.Controls.Add(ListCtrl);                ListCtrl.Show();            }        }private void Form_Load(object sender, EventArgs e)        {            LogCtrl = new CtrlLogin(s);       //s是传入的登录对象的引用             LogCtrl.Dock = DockStyle.Fill;            ListCtrl = new CtrlList(s);     //login和登录之后显示的list是同一个引用            ListCtrl.Dock = DockStyle.Fill;            this.Controls.Add(LogCtrl);//在loginControl里完成登录        }




[解决办法]
我做了一下,可以实现功能,不知道你的问题处在那里。

热点排行