<asp:ListView ID="lstvwCalendar" runat="server" OnLayoutCreated="lstvwCalendar_LayoutCreated"> <layouttemplate> <table> <tr class="day_of_week"> <th> Name </th> </tr> <asp:PlaceHolder ID="itemPlaceHolder" runat="server"> </table> </layouttemplate> <itemtemplate> <tr class="day_of_week"> <td> <cc1:clickablepanel id="pnlSunday" runat="server" önclick="ClickablePanel1_Click" width="100%" height="100%" CommandArgument='<%# Eval("Name") %>'> </td> </tr> </itemtemplate>
public class ClickablePanel : System.Web.UI.WebControls.Panel, System.Web.UI.IPostBackEventHandler { [System.ComponentModel.Bindable(true)] public string CommandArgument { get; set; } public ClickablePanel() : base() { } private event EventHandler _click; public event EventHandler Click { add { _click += value; } remove { _click -= value; } } protected virtual void FireClickEvent() { if (_click != null) { _click(this, new EventArgs()); } } protected override void AddAttributesToRender(HtmlTextWriter writer) { writer.AddAttribute(HtmlTextWriterAttribute.Onclick, Page.ClientScript.GetPostBackEventReference(this, String.Empty)); base.AddAttributesToRender(writer); } public void RaisePostBackEvent(string eventArgument) { FireClickEvent(); } public event System.ComponentModel.PropertyChangedEventHandler CommandArgumentChanged; public void OnCommandArgumentChanged(System.ComponentModel.PropertyChangedEventArgs e) { if (CommandArgument != null) { CommandArgumentChanged(this, e); } } }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)