webbrower导致用户控件的usercontrol.load事件无法执行
2010-12-09 18:42
387 查看
今天遇到一个奇怪的问题,在用户控件上放置一个webbrower控件,然后把这个用户控件放在一个窗体上,结果用户控件的load事件不会被执行,原因是webbrower导致用户控件的load的事件无法执行,至于具体为什么会这样,还没找到原因,但是可以采用以下两种方法解决,让用户控件的LOAD事件执行
1.在用户控件的构造函数中,把用户控件的可见性设为FALSE,在用户控件所在的窗体的LOAD事件中,把用户控件的可见性设为TRUE,代码如下
2.第二种解决办法是你建立两个用户控件,把WEBBROWR所在的用户控件放置到另一个用户控件中,把另一个用户控件放置到窗体上,
然后把WEBBROWER所在的用户控件的LOAD事件里面的方法转移到另一个用户控件的LOAD事件中执行。
1.在用户控件的构造函数中,把用户控件的可见性设为FALSE,在用户控件所在的窗体的LOAD事件中,把用户控件的可见性设为TRUE,代码如下
public partial class UserControl1 : UserControl { public UserControl1() { this.Visible = false; InitializeComponent(); } private void UserControl1_Load(object sender, EventArgs e) { MessageBox.Show("2"); } }
public Form3() { InitializeComponent(); } private void Form3_Load(object sender, EventArgs e) { this.userControl11.Visible = true; }
2.第二种解决办法是你建立两个用户控件,把WEBBROWR所在的用户控件放置到另一个用户控件中,把另一个用户控件放置到窗体上,
然后把WEBBROWER所在的用户控件的LOAD事件里面的方法转移到另一个用户控件的LOAD事件中执行。
相关文章推荐
- Wpf 用户控件Load事件执行两次
- 研究一下FBrush,它是从TWinControl才有的属性(可能是因为需要句柄)——发现{$R *.dfm}在运行期执行,而且很有深意,读到属性后赋值还会触发事件,这些无法在VCL代码里直接看到
- 动态添加的用户控件不执行事件(或执行事件消失)
- ASP.NET中页面及用户控件的事件执行顺序
- 页面中声明方式定义的用户控件与页面事件的执行顺序
- SharePoint用户控件包装器(UserControl Wrapper Part)
- 添加RichEdit控件导致MFC对话框程序无法执行的解决方法
- $HOME/$user/.权限导致用户无法登陆图形界面
- wpf用户控件增加UserControl.DataContext时出错
- 添加RichEdit控件导致MFC对话框程序无法执行的解决方法
- WPF之路——用户控件对比自定义控件(UserControl VS CustomControl)
- aspx页面Page_Load和aspx页面上控件Page_Load事件执行顺序
- 添加RichEdit控件导致MFC对话框程序无法执行的解决方法
- 导致Page_Load被执行两次的原因 AutoEventWireup属性与Page_Load事件
- AutoEventWireup="false"导致Page_Load事件未执行 或为 true时执行2次 .
- AutoEventWireup="false"导致Page_Load事件未执行
- WPF之路——用户控件对比自定义控件UserControl VS CustomControl)
- ASP.NET页面事件过程-多个用户控件时的执行过程
- WPF中用户控件对比自定义控件(UserControl VS CustomControl)
- ASP.Net 母版、页面、用户控件事件的执行顺序