我想实现一个简单的带有事件的控件
加一                1        
假设 加一  是一个按钮,1是一个label的值 我想实现 单击 加一 然后后边label中的数字自加一。
自定义控件 最终生成的dll  ,注:想在自定义控件中完成事件的实现..控件labelControl

解决方案 »

  1.   

    你这个用不到事件,因为都在内部进行。button1_Click()
    {
        label1.Text = (int.Parse(label1.Text) + 1).ToString();
    }
      

  2.   

    你确定要的是WEB的功能?用户控件就可以同时注意用JS实现,而不是c#
      

  3.   

     label1.Text = (int.Parse(label1.Text) + 1).ToString();
      

  4.   

    定义一个用户控件就可以,原理很简单,拖一个button,一个textbox,然后直接点击按钮,textbox的值+1.然后编译一下,在vs的工具箱会多一个工具,直接拖到你的项目中就可以用了。
      

  5.   

    大家好,你们可能没弄清楚我的需求。。
    首先,它是一个自定义控件。然后它实现的功能就才是后边的内容。。
    自定义控件不是用户控件。
    我需要的是最终生成一个dll文件然后只要我在项目中引用了就可以用的那种,并不是这么简答,如果只是简单的实现,我也不会求助这里。
      

  6.   


    using System;
    using System.Web.UI;
    using System.Web.UI.WebControls;namespace MyControls
    {
    public class MyControl : CompositeControl, INamingContainer
    {
    protected override void CreateChildControls()
    {
    if (ChildControlsCreated) return;
    Controls.Clear();
    Label label = new Label() {Text = "1"};
    Button btn = new Button() { Text = "加一" };
    btn.Click += (s,e)=>
    {
    label.Text = (int.Parse(label.Text) + 1).ToString();
    };
    Controls.Add(btn);
    Controls.Add(label);
    ChildControlsCreated = true;
    }
    }
    }
    调用:<!-- 头部 -->
    <%@ Register TagPrefix="myControls" Namespace="MyControls" Assembly="YourAppName" %><!-- body中 -->
    <myControls:MyControl runat="server" />