对页面引用自定义控件后,通过绑定自定义事件,页面绑定子控件的事件,在子控件做了某些修改动作后,如何同步操作父页面的方法;下面我煮了个栗子,同学们可以来尝一尝试一试

a.aspx 引用 UserControl :ucReportViewCore.ascx(b控件)

b控件声明事件变量ReportUseDefaultTemplateChanged,并添加方法OnReportUseDefaultTemplatChanged判断ReportUseDefaultTemplateChanged变量不为空时,执行事件变量ReportUseDefaultTemplateChanged

      public event EventHandler<EventArgs<bool>> ReportUseDefaultTemplateChanged;//a
protected void OnReportUseDefaultTemplatChanged(bool checkedValue)
{
if (ReportUseDefaultTemplateChanged != null)
{
ReportUseDefaultTemplateChanged(this, new EventArgs<bool>(checkedValue));
}
}

a页面,在Oninit事件中绑定b控件的事件变量ReportUseDefaultTemplateChanged,并将a页面上的一个事件赋值给b控件的事件变量

   protected override void OnInit(EventArgs e)
   {
    ucReportViewCore.ReportUseDefaultTemplateChanged += new EventHandler<CIPACE.Model.CustomReport.EventArgs<bool>>(ucReportViewCore_ReportUseDefaultTemplateChanged);
   }
    void ucReportViewCore_ReportUseDefaultTemplateChanged(object sender, CIPACE.Model.CustomReport.EventArgs<bool> e)
{
if (IsPortalReport)
{
int modifIndex = RowIndex;
if (modifIndex >= )
{
if (ReportSetting != null)
{
ReportSetting.Reports[modifIndex].UseDefaultTemplate = e.Parameter;
}
}
}
}

自定义EventArgs类

namespace CIPACE.Model.CustomReport
{
[Serializable]
public class EventArgs<T> : EventArgs
{
private T param;
public T Parameter
{
get { return param; }
}
public EventArgs(T parameter)
{
this.param = parameter;
}
}
}

最新文章

  1. HTML label标签的一点理解
  2. git的配置
  3. 关于gcd的几个问题
  4. github 基础教程推荐
  5. perl 学习杂项笔记
  6. STORM_0004_windows下zookeeper的伪集群的搭建
  7. latch和DFF的区别和联系
  8. JavaScript 阻止事件冒泡的实现方法
  9. intrins.h 里面的函数都有什么,功能是什么?
  10. PowerMockito使用详解
  11. 【WebGL入门】画一个旋转的cube
  12. hihocoder1257(构造)(2015北京ACM/ICPC)
  13. Java Socket、计算机网络
  14. WPF中的数据绑定(初级)
  15. XGBoost模型的参数调优
  16. Redis基础、高级特性与性能调优
  17. Puppet的搭建和应用
  18. 使用c#反射实现接口可视化调试页面
  19. ogg 12.3 for sqlserver 2016 CDC模式配置
  20. 关于map::erase的使用说明

热门文章

  1. RFCN配置参数
  2. Linux 日常用法
  3. Apache Flink 数据流编程模型
  4. jmeter-用户定义的变量
  5. About Feature Scaling and Normalization
  6. 如何看iOS崩溃日志
  7. node.js 从入门到。。。
  8. nginx访问502 gateway,*1 connect() failed (111: Connection refused) while connecting to upstream
  9. anaconda使用方法
  10. bhttpd