UcAuthBtn
出自ProgWiki
目錄 |
用途
- 整合界面(把FromView用的相關按鈕整合在一起)
程式碼
ucAuthBtn.ascx
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="ucAuthBtn.ascx.cs" Inherits="UserControl_ucAuthBtn" %> <asp:Table ID="Table1" runat="server" Font-Size="15px" OnPreRender="Table1_PreRender"> <asp:TableRow VerticalAlign="Bottom" HorizontalAlign="Center"> <asp:TableCell Width="40px"> <asp:ImageButton ID="ImageButton1" runat="server" CausesValidation="True" ImageUrl="~/Images/icon_Add.gif" OnClick="ibAdd_Click" ToolTip="新增一筆資料" /><br /> 新增</asp:TableCell> <asp:TableCell Width="40px"> <asp:ImageButton ID="ibDelete" runat="server" CausesValidation="True" ImageUrl="~/Images/icon_Delete.gif" OnClick="ibDelete_Click" OnClientClick="return confirm('確定要刪除嗎?');" ToolTip="刪除這筆資料" /><br /> 刪除 </asp:TableCell> <asp:TableCell Width="40px"> <asp:ImageButton ID="ibUpdate" runat="server" CausesValidation="True" ImageUrl="~/Images/icon_Update.gif" OnClick="ibUpdate_Click" ToolTip="修改這筆資料" /><br /> 修改 </asp:TableCell> <asp:TableCell Width="40px"> <asp:ImageButton ID="ibSave" runat="server" CausesValidation="True" ImageUrl="~/Images/icon_Save.gif" OnClick="ibSave_Click" OnClientClick="return confirm('確定要儲存嗎?');" ToolTip="儲存這筆資料" /><br /> 儲存 </asp:TableCell> <asp:TableCell Width="40px"> <asp:ImageButton ID="ibPrint" runat="server" CausesValidation="True" ImageUrl="~/Images/icon_Print.gif" OnClick="ibPrint_Click" ToolTip="列印這筆資料" /><br /> 列印 </asp:TableCell> <asp:TableCell Width="40px"> <asp:ImageButton ID="ibCancel" runat="server" CausesValidation="False" ImageUrl="~/Images/icon_Cancel.gif" OnClick="ibCancel_Click" ToolTip="返回本程式主頁" /><br /> 取消 </asp:TableCell> <asp:TableCell Width="40px"> <asp:ImageButton ID="ibHome" runat="server" CausesValidation="False" ImageUrl="~/Images/icon_Home.gif" OnClick="ibHome_Click" ToolTip="返回本程式主頁" /><br /> 返回 </asp:TableCell> </asp:TableRow> </asp:Table>
ucAuthBtn.ascx.cs
using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public delegate void SendMessageHandler(string message); public partial class UserControl_ucAuthBtn : System.Web.UI.UserControl { protected void Page_Load(object sender, EventArgs e) { } public event SendMessageHandler OnClickNew; public event SendMessageHandler OnClickEdit; public event SendMessageHandler OnClickDelete; public event SendMessageHandler OnClickSave; public event SendMessageHandler OnClickPrint; public event SendMessageHandler OnClickCancel; public event SendMessageHandler OnClickReturn; protected void ibAdd_Click(object sender, ImageClickEventArgs e) { if (OnClickNew != null) OnClickNew("新增"); } protected void ibDelete_Click(object sender, ImageClickEventArgs e) { if (OnClickDelete != null) OnClickDelete("刪除"); } protected void ibUpdate_Click(object sender, ImageClickEventArgs e) { if (OnClickEdit != null) OnClickEdit("修改"); } protected void ibSave_Click(object sender, ImageClickEventArgs e) { if (OnClickSave != null) OnClickSave("儲存(新增)"); } protected void ibPrint_Click(object sender, ImageClickEventArgs e) { if (OnClickPrint != null) OnClickPrint("列印"); } protected void ibCancel_Click(object sender, ImageClickEventArgs e) { if (OnClickCancel != null) OnClickCancel("取消"); } protected void ibHome_Click(object sender, ImageClickEventArgs e) { if (OnClickReturn != null) OnClickReturn("返回"); } protected void Table1_PreRender(object sender, EventArgs e) { if (OnClickNew == null) this.Table1.Rows[0].Cells[0].Visible = false; if (OnClickEdit == null) this.Table1.Rows[0].Cells[1].Visible = false; if (OnClickDelete == null) this.Table1.Rows[0].Cells[2].Visible = false; if (OnClickSave == null) this.Table1.Rows[0].Cells[3].Visible = false; if (OnClickPrint == null) this.Table1.Rows[0].Cells[4].Visible = false; if (OnClickCancel == null) this.Table1.Rows[0].Cells[5].Visible = false; if (OnClickReturn == null) this.Table1.Rows[0].Cells[6].Visible = false; } }
測試
TeatPage.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="TeatPage.aspx.cs" Inherits="UserControl_TeatPage" %> <%@ Register Src="ucAuthBtn.ascx" TagName="ucAuthBtn" TagPrefix="uc1" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>未命名頁面</title> </head> <body> <form id="form1" runat="server"> <div> <uc1:ucAuthBtn ID="UcAuthBtn1" runat="server" /> </div> <asp:Label ID="Label1" runat="server" Height="141px" Text="Label" Width="304px"></asp:Label> </form> </body> </html>
TeatPage.aspx.cs
using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class UserControl_TeatPage : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { this.UcAuthBtn1.OnClickNew += delegate(string message) { this.Label1.Text = "測試新增"; }; this.UcAuthBtn1.OnClickReturn += delegate(string message) { this.Label1.Text = "測試返回"; }; } }