国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

用類的繼承關系(重寫父類的方法)實現簡易后臺代碼模板

2020-01-18 00:17:05
字體:
來源:轉載
供稿:網友
Asp.net的優勢就在于快速構建應用,而對于一些最基礎數據的增刪改以及分頁事件或者樣式的設定可以通過在父類中寫上虛方法來供子類調用,如果子類需要在模板的基礎上衍生變化或者索性不要父類的方法的話,則只需要重寫父類的方法即可。

實驗代碼如下
首先是模板類的抽象,繼承自Page類;
復制代碼 代碼如下:

public class Template : System.Web.UI.Page
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
if (!IsPostBack)
{
DataRefresh();
}
}
protected virtual void DataRefresh()
{
}
protected virtual void grid_Init(object sender, EventArgs e)
{
var grid = sender as GridView;
grid.AllowPaging = true;
grid.PageSize = 10;
grid.PagerSettings.Mode = PagerButtons.NumericFirstLast;
}
protected virtual void grid_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
var grid = sender as GridView;
grid.PageIndex = e.NewPageIndex;
DataRefresh();
}
}

然后是一個繼承此模板類的具體實例;
復制代碼 代碼如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Child.aspx.cs" Inherits="WebTest.Child" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="grid" runat="server" OnInit="grid_Init" OnPageIndexChanging="grid_PageIndexChanging"></asp:GridView>
</div>
</form>
</body>
</html>

最后就是關鍵的后臺代碼實現,此處假設需要修改grid的每頁顯示數和分頁樣式;
復制代碼 代碼如下:

public partial class Child : Template
{
protected override void DataRefresh()
{
grid.DataSource = new LogDao().GetLogsByYearMonth("2012", "10");
grid.DataBind();
}
protected override void grid_Init(object sender, EventArgs e)
{
base.grid_Init(sender, e);
grid.PagerSettings.Mode = PagerButtons.NextPreviousFirstLast;
grid.PageSize = 15;
}
}

以上僅是提供一種思路,如有錯誤望各網友批評指正。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 灌南县| 罗山县| 咸宁市| 新蔡县| 濮阳市| 大荔县| 毕节市| 正镶白旗| 苏州市| 贺兰县| 临泉县| 禹州市| 乐平市| 平利县| 扎赉特旗| 南木林县| 富锦市| 甘德县| 虞城县| 天长市| 全椒县| 深水埗区| 丽江市| 德令哈市| 普洱| 奎屯市| 贡嘎县| 台江县| 涟源市| 体育| 东乡县| 潮州市| 天长市| 通化县| 定兴县| 西林县| 房产| 鸡泽县| 崇明县| 武城县| 剑川县|