All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
ASP.NET中散列加密密码_[Asp.Net教程]
ASP.NET,MVC+LINQ开发一个图书销售站点(6)-创建数据层_[Asp.Net教程]
PHP中用正则表达式验证中文的问题_php资料_编程技术
入门实例:PHP制作的网站意见在线反馈表_php资料_编程技术
无废话C#设计模式之四:Factory,Method_.net资料_编程技术
使用PHP程序来保护你的flash作品_php资料_编程技术
在asp.net中实现删除DataGrid的某条记录时的提示信息_.net资料_编程技术
VS.net调试ASP.NET项目出错原因及解决_[Asp.Net教程]
用C#访问ACCESS数据库问题_.net资料_编程技术
关于脏字典过滤问题-用正则表达式来过滤脏数据_.net资料_编程技术
Reading number is top 10 pictures
西游四格漫画(五)
西游日记1
再发一张清纯美眉的照片
战场废物2
分手的感悟
大年初五接财神
Discharge accidentally Actresses by the breast1
这两天,中国人民到处都可以“看海”了
A resort photographed beautiful young woman change clothes process vomiting blood2
The money of more than 100 countries and regions11
Download software ranking
Unix video tutorial9
WebService在.NET中的实战应用教学视频 → 第3集
Adobe Flash Player(IE) 10.0.32.18 浏览器专用的FLASH插件
Tram sex maniac 2 (H) rar bag6
Tram sex maniac 2 (H) rar bag5
电车之狼R
Ashlynn Video5
matrix1
Call Of Duty2
变速齿轮3.26
归海一刀 published in(发表于) 2014/1/30 1:11:56 Edit(编辑)
温故知新ASP.NET,2.0(C#)(1),-,MasterPage(母版页)_[Asp.Net教程]

温故知新ASP.NET,2.0(C#)(1),-,MasterPage(母版页)_[Asp.Net教程]

温故知新ASP.NET 2.0(C#)(1) - MasterPage(母版页)_[Asp.Net教程]


介绍
母版页(MasterPage)就相当于模板页,挺简单的,没什么好说的。基于母版页的常用的功能有:母版页和内容页之间信息的传递,在内容页中用FindControl方法找到内容页中的控件等。另外,母版页是可以嵌套的。



关键
在内容页的头部加上母版页的强类型引用
<%--创建对母版页的强类型引用,并指定到母版页的虚拟路径--%>
<%@ MasterType VirtualPath="~/MasterPage/MasterPage.master" %>
1、内容页传递数据到母版页 - 母版页创建一个公共方法,然后内容页通过“Master.方法”来调用这个公共方法


2、母版页传递数据到内容页 - 母版页创建一个公共事件来传递数据,然后内容页处理这个事件


3、内容页中用FindControl方法找到内容页中的控件 - 用“Master.FindControl("ContentPlaceHolder1").FindControl("你要查找的控件ID")”来查找


4、嵌套母版页 - 说起来麻烦,看源码吧



示例
主母板页
Site.master
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="Site.master.cs" Inherits="Site" %>


重新过一遍ASP.NET 2.0(C#)












次母板页
MasterPage/MasterPage.master
<%@ Master Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeFile="MasterPage.master.cs" Inherits="MasterPage_MasterPage" %>


我是一个嵌套母版页



母版页中的内容
DataValueField="value" AutoPostBack="True" OnSelectedIndexChanged="ddlMaster_SelectedIndexChanged">




内容页中的内容



MasterPage/MasterPage.master.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 MasterPage_MasterPage : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{


}


/**////


/// 设置ddlMaster的选中索引
/// 这个方法由内容页调用
///

///
public void SetddlMaster(int index)
{
ddlMaster.SelectedIndex = index;
}


protected void ddlMaster_SelectedIndexChanged(object sender, EventArgs e)
{
// ddlMaster的选中索引改变后,激发SelectedIndexChanged_ddlMaster事件
SelectedIndexChanged_ddlMaster(this, new CommandEventArgs(ddlMaster.SelectedItem.Text, ddlMaster.SelectedValue));
}


// 声明一个公共时间事件,让内容页用
public event CommandEventHandler SelectedIndexChanged_ddlMaster;
}


内容页
MasterPage/Test.aspx
<%@ Page Language="C#" MasterPageFile="~/MasterPage/MasterPage.master" AutoEventWireup="true"
CodeFile="Test.aspx.cs" Inherits="MasterPage_Test" Title="MasterPage测试" %>


<%--创建对母版页的强类型引用,并指定到母版页的虚拟路径--%>
<%@ MasterType VirtualPath="~/MasterPage/MasterPage.master" %>

datavaluefield="value" autopostback="True" onselectedindexchanged="ddlPage_SelectedIndexChanged">




MasterPage/Test.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 MasterPage_Test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
// 在内容页用FindControl方法找到内容页中的控件
DropDownList ddl = new DropDownList();
ddl = Master.Master.FindControl("ContentPlaceHolder1").FindControl("cph").FindControl("ddlPage") as DropDownList;
Master.Master.FindControl("ContentPlaceHolder1").FindControl("cph").Controls.Add(new LiteralControl("
内容页中的DropDownList的ClientID是:" + ddl.ClientID));


// 增加一个事件处理,该事件是在母版页定义的一个公共事件
Master.SelectedIndexChanged_ddlMaster += new CommandEventHandler(Master_SelectedIndexChanged_ddlMaster);
}


void Master_SelectedIndexChanged_ddlMaster(object sender, CommandEventArgs e)
{
// CommandEventArgs已经在母版页中的公共事件“SelectedIndexChanged_ddlMaster”中指定
string selectedText = e.CommandName;
string selectedValue = e.CommandArgument.ToString();


ddlPage.SelectedValue = selectedValue;
}


protected void ddlPage_SelectedIndexChanged(object sender, EventArgs e)
{
// 调用母版页的方法
Master.SetddlMaster(ddlPage.SelectedIndex);
}
}


[源码下载]


作者:webabcd







添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.