我在窗体A中使用了自定义控件,该控件中委托了事件ColorChanged,在窗体B中响应该事件:
先在解决方案资源管理器中引用命名空间ctlResolution,然后在窗体B中写如下代码
ctlAppearance.ctlAppearance ctlAppearance1; //声明对象ctlAppearance1 = new ctlAppearance.ctlAppearance(); //实例化对象//事件委托给方法ctlAppearance1_ColorChanged(Color color1)
ctlAppearance1.ColorChanged += new ctlAppearance.ctlAppearance.DelegateColorChange(ctlAppearance1_ColorChanged); void ctlAppearance1_ColorChanged(Color color1)
{
this.BackColor = color1; //改变窗体颜色
}在控件中定义委托代码为
public delegate void DelegateColorChange(System.Drawing.Color color1);问题是:调试时候发现在B窗体中没有触发事件ColorChanged?但是如果我把方法ctlAppearance1_ColorChanged()的代码写到A窗体中
,就可以触发。即在同一个窗体下可以触发事件,跨窗体则不行?
先在解决方案资源管理器中引用命名空间ctlResolution,然后在窗体B中写如下代码
ctlAppearance.ctlAppearance ctlAppearance1; //声明对象ctlAppearance1 = new ctlAppearance.ctlAppearance(); //实例化对象//事件委托给方法ctlAppearance1_ColorChanged(Color color1)
ctlAppearance1.ColorChanged += new ctlAppearance.ctlAppearance.DelegateColorChange(ctlAppearance1_ColorChanged); void ctlAppearance1_ColorChanged(Color color1)
{
this.BackColor = color1; //改变窗体颜色
}在控件中定义委托代码为
public delegate void DelegateColorChange(System.Drawing.Color color1);问题是:调试时候发现在B窗体中没有触发事件ColorChanged?但是如果我把方法ctlAppearance1_ColorChanged()的代码写到A窗体中
,就可以触发。即在同一个窗体下可以触发事件,跨窗体则不行?
解决方案 »
- picturebox 隐藏的时候如何清空里面的图片。50分求。
- C# 开发网站时,上传公文的问题??
- C# 怎样让DataGridView 显示查询结果
- 编程有那几种模式
- 高分求VS.Net 2005下载地址,不要Express Edition版本的
- 热卖散分:如果你想在最短的时间中,通过MCAD的考试,请进来看看:)
- VS2008中使用Team Explorer连接CodePlex的问题
- 获取控件所有属性问题,请帮忙,急!!!!!!!!
- 同一个窗体有两个datagrid控件,如何把第一个控件中选定的行转移到第二个控件中去,急!在线等待
- 请问各位大虾,在C#程序中怎么在一个窗体中引用另外一个窗体中的变量
- 网页里前台javascript脚本怎么调用后台C#函数
- 多重数组怎么来赋值?
formb为窗体b的实例
此对象不是你在窗体A中的控件对象