选择显示字体大小

asp.net中设计带事件定制控件(2)

     我将把控件命名为storeselector.ascx。第一步是在表单上添加dropdownlist控件。
  
  
  
  (图2)
  
     现在就该为该控件“布线”了。创建一个dataset类的对象:
  
   #code
   private dataset data;
   #end code
  
     创建向下拉列表中填写数据的binddata功能:
  
   #code
   private void binddata()
   {
    data = new dataset();
    sqlconnection cnn = new sqlconnection("data source=(local);initial
    catalog=pubs;integrated security=sspi");
    sqldataadapter adapter = new sqldataadapter();
    adapter.selectcommand = new sqlcommand("select stor_id, stor_name,stor_address, city, state, zip from stores", cnn);
    adapter.fill(data, "stores");
    storelist.datasource = data;
    storelist.datamember = "stores";
    storelist.datatextfield = "stor_name";
    storelist.databind();
    session.add("data", data);
   }
   #end code
  
     我在session变量上增加了dataset对象,以使数据在对话存在期间以及控件事件触发期间传递数据时都是可以访问的。注意,要确保page_onload事件的正确:
  
   #code
   private void page_load(object sender, system.eventargs e)
   {
    if(!page.ispostback)
    {
     binddata();
    }
   }
   #end code
  
     现在我们将新控件拖到default.aspx网页上,并运行该项目。
  
  
  
  (图3)
  
  
  
  (图4)
  
     很简单是吧?下面就该是技巧比较高的部分了。我们希望在default.aspx上添加几个标签,反映不断变化的商店。我们希望每个标签显示现在选择的商店中的一列,在这里我们就需要为storeselector控件和事件参数类创建一个定制事件。下面我们先创建event argument class(storeselectorcommandeventargs.cs):
  
   #code
   public class storeselectorcommandeventargs
   {
    private string _stor_id;
    private string _stor_name;
    private string _stor_address;
    private string _city;
    private string _state;
    private string _zip;
  
    public storeselectorcommandeventargs(string stor_id, string stor_name,
    string stor_address, string city, string state, string zip)
    {
     _stor_id = stor_id;
     _stor_name = stor_name;
     _stor_address = stor_address;
     _city = city;
     _state = state;
     _zip = zip;
    }
  
    public string stor_id{ get{ return _stor_id; } }
    public string stor_name{ get{ return _stor_name; } }
    public string stor_address{ get{ return _stor_address; } }
    public string city{ get{ return _city; } }
    public string state{ get{ return _state; } }
    public string zip{ get{ return _zip; } }
   }
   #end code
  
     该类的目的是为了处理定义事件参数的“e”变量,我们要做的仅仅是创建了其中的一个。下面是定义如何处理事件的代理类(storeselectorcommandeventhandler.cs):
  
   #code
   public delegate void storeselectorcommandeventhandler(object sender,
   storeselectorcommandeventargs e);
   #end code
  
     下面是产生的文件:
  
  
  (图5)
    


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons