User Control with events.

How do I create custom event for user control which fires on page

Follwing UserControl and Page code show how you can do that.

------------
Page
------------

<%@ Control Language="C#" %>
<script runat="server">

    publicstring Title="myTitile";
    publicstring Value {get {return myValue.Text;}}

    publicevent EventHandler Save;

    void Button1_Click(object sender, EventArgs e) {
        OnSave(this,e);
    }

    protectedvirtualvoid OnSave(Object sender,EventArgs e){
        if(Save != null){
            Save(this, e);
        }
    }

</script>
<div>
    <% =Title %><br/>
    <asp:TextBox id="myValue" Text="2" runat="server"></asp:TextBox>
    <asp:Button id="Button1" onclick="Button1_Click" 
    Text="Go" runat="server"></asp:Button>
</div>

------------
UserContol
------------

 

<%@ Page Language="C#" %>
<%@ Register TagPrefix="Test" TagName="MyControl" Src="UserControlEvents.ascx" %>
<script runat="server">

    void TestControl_OnSave(object sender, EventArgs e){
        Response.Write(((Control)sender).ID + "was fired <br/>");
    }

</script>
<html>
<head>
</head>
<body>
    <form runat="server">
        <Test:MyCOntrol id="TestControl1" Title="" runat="server" 
            OnSave="TestControl_OnSave"/>
        <Test:MyCOntrol id="TestControl2" runat="server" 
            OnSave="TestControl_OnSave"/>
    </form>
</body>
</html>
Bookmark with:
Technorati   Digg   Delicious   StumbleUpon   Facebook
My name is Jigar Desai I share my ideas on this site and you can contact me by filling contact form.

Categories