CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

自定义控件的事件问题

楼主bkm2(bkm2)2006-03-06 10:54:40 在 .NET技术 / ASP.NET 提问

做了一个web控件(dll的那种),里面有个button和一个dropdownlist,请问如何实现button的text根据dropdownlist的selectvalue改变而改变,现在捕获不了dropdownlist的SelectedIndexChanged事件 问题点数:20、回复次数:9Top

1 楼zhuzhu_syj(猪猪)回复于 2006-03-06 11:12:16 得分 0

我也遇过这个问题..我用1个Label把dropdownlist的SelectItem值存进去就行了  
  Top

2 楼bkm2(bkm2)回复于 2006-03-06 11:51:16 得分 0

用的是vb.netTop

3 楼bkm2(bkm2)回复于 2006-03-06 11:57:04 得分 0

我在控件的page_load事件中定义了  
  AddHandler   ddlb_val.SelectedIndexChanged,   AddressOf   ddlb_val_SelectedIndexChanged  
  但是它不执行  
  Protected   Sub   ddlb_val_SelectedIndexChanged(ByVal   sender   As   Object,   ByVal   e   As   EventArgs)Top

4 楼xiahouwen(武眉博<活靶子.NET>)回复于 2006-03-06 12:13:19 得分 0

将DropDownList的SelectedIndexChanged事件冒泡到你的控件中处理Top

5 楼bkm2(bkm2)回复于 2006-03-06 12:23:23 得分 0

请问怎么冒泡呢?Top

6 楼beiouwolf(beiouwolf)回复于 2006-03-06 12:28:14 得分 0

倒...  
  有这么复杂吗...  
  DROPDOWNLIST需要点击返回信息的话,需要把AutoPostBack设为true  
  默认是FALSE的Top

7 楼xiahouwen(武眉博<活靶子.NET>)回复于 2006-03-06 13:17:27 得分 20

#region   Disclaimer  
  ///////////////////////////////////////////////////////////////////////////////////////////////////  
  //  
  //   本文件中提供的信息按“原样”提供,不作任何形式的保证,也没有授予任何权利。  
  //   武眉博、活靶子、www.BooVoo.Com、www.AspxBoy.Com   不作任何明示或暗示的保证,包括对适销性和针对特定用途的适用  
  //   性的保证在任何情况下,武眉博、活靶子、www.BooVoo.Com、www.AspxBoy.Com   均不对任何损害(包括直接的、间接的、  
  //   意外的或后果性的商业利润损失或特殊损害)承担任何责任,即使   武眉博、活靶子、www.BooVoo.Com、www.AspxBoy.Com    
  //   先已被告知发生这类损害的可能性。  
  //  
  //-------------------------------------------------------------------------------------------------      
  //   Project: MyControls.DropDownListButton  
  //   HomePage: http://www.aspxboy.com/  
  //   Blog: http://cnblogs.com/huobazi  
  //   Email: huobazi@AspxBoy.Com   && huobazi@gmail.com  
  //   CopyRight: http://www.AspxBoy.Com   &&   http://www.BooVoo.Com    
  //  
  //-------------------------------------------------------------------------------------------------  
  //   For   updated   news   and   information   please   visit   http://www.AspxBoy.com/  
  //-------------------------------------------------------------------------------------------------  
  //  
  //   FileName: DropDownListButton.cs  
  //   AuthorName: 武眉博、活靶子 huobazi@aspxboy.com   &&   huobazi@gmail.com      
  //   CreateDate: 2006-03-06    
  //   CopyRight: www.AspxBoy.Com   &&   www.BoVoo.Com  
  //      
  ///////////////////////////////////////////////////////////////////////////////////////////////////  
  #endregion  
  using   System;  
  using   System.Web.UI;  
  using   System.Web.UI.WebControls;  
   
  namespace   WebTest.MyControls  
  {  
   
  ///   <summary>  
  ///   DropDownListButton   的摘要说明。  
  ///   </summary>  
  public   class   DropDownListButton :   WebControl   ,   INamingContainer  
  {  
  private   DropDownList   list;  
  private   Button   btn;  
   
   
  public   DropDownListButton()  
  {  
  //  
  //   TODO:   在此处添加构造函数逻辑  
  //  
  }  
   
  protected   override   HtmlTextWriterTag   TagKey  
  {  
  get  
  {  
  return   HtmlTextWriterTag.Div;  
  }  
  }      
  protected   virtual   void   CreateControlHierarchy()  
  {  
  list   =   new   DropDownList();  
   
  btn   =   new   Button();  
   
  }  
  protected   virtual   void   PrepareColtrolHierarchy()  
  {  
  list.AutoPostBack   =   true;  
  list.ID   =   "MyList";  
  list.Width   =   Unit.Pixel(80);  
  list.Items.Add(new   ListItem("First"));  
  list.Items.Add(new   ListItem("Second"));  
  list.SelectedIndexChanged   +=new   EventHandler(list_SelectedIndexChanged);  
   
  btn.Width   =   Unit.Pixel(80);  
  btn.ID   =   "MyBtn";  
  btn.Text   =   "DefaultText";  
   
  Controls.Add(list);  
  Controls.Add(btn);  
  }      
  private   void   list_SelectedIndexChanged(object   o   ,   EventArgs   e)  
  {  
  btn.Text   =   this.list.SelectedItem.Text;  
  }  
   
  protected   override   void   CreateChildControls()  
  {  
  Controls.Clear();  
  CreateControlHierarchy();  
  PrepareColtrolHierarchy();  
  ChildControlsCreated   =   true;  
  }  
  protected   override   void   AddAttributesToRender(HtmlTextWriter   writer)  
    {  
    if(Page   !=   null)  
    {  
    Page.VerifyRenderingInServerForm(this);  
    }  
    base.AddAttributesToRender(writer);  
  }  
   
  protected   override   void   Render(HtmlTextWriter   writer)  
  {  
  EnsureChildControls();  
  base.Render   (writer);  
  }  
   
  }  
  }  
  Top

8 楼xiahouwen(武眉博<活靶子.NET>)回复于 2006-03-06 13:19:33 得分 0

sorry   经过我测试,直接指定事件是可以的。上面回复内容为测试代码。Top

9 楼radio_3000(学习中……)回复于 2006-03-06 19:16:28 得分 0

支持!Top

相关问题

  • 关于自定义控件的事件
  • 自定义控件事件问题
  • 如何在自定义控件当中加入keydown事件?
  • 如何为自定义控件增加事件处理
  • 自定义控件、自定义事件的问题!!!
  • 请问如何调用自定义控件中的click事件?
  • 自定义控件的 事件问题(win form)
  • [50分]自定义控件事件失败
  • 自定义控件的处理事件问题,急!!!
  • 自定义控件事件问题,请各位大哥帮助!

关键词

  • 控件
  • aspxboy
  • dropdownlistbutton
  • selectedindexchanged
  • huobazi
  • boovoo
  • 活靶子
  • ddlb
  • dropdownlist
  • btn

得分解答快速导航

  • 帖主:bkm2
  • xiahouwen

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo