- ·上一篇文章:使用函数传递参数来执行数据库操作
- ·下一篇文章:ASP.NET中实现模版的动态加载(1)
ASP.NET中实现模版的动态加载(2)
<%@ Control Language="VB" %>
<FONT face="verdana" color="green" size="2"><b>ID: </b>
<%# DataBinder.Eval(CType(Container, DataListItem).DataItem, "ID") %>
<b>Name: </b>
<%# DataBinder.Eval(CType(Container, DataListItem).DataItem, "Name") %>
<br>
<b>Address: </b>
<%# DataBinder.Eval(CType(Container, DataListItem).DataItem, "Address") %>
<p>
</FONT>
最后,我们开始创建应用程序,新建一个工程,添加两个按钮和一个datalist控件如下图
[img]/article/UploadPic/2006-8/200681484350749.jpg[img]
之后创建一个binddatagrid的方法,将dataset绑定到datalist控件中去,代码如下:
private void BindDataGrid()
{
dtSet = DB.GetDataSet();
DataList1.DataSource = dtSet.Tables[0].DefaultView;
DataList1.DataBind();
}
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
BindDataGrid();
}
}
最后,分别为两个按钮的clcik事件添加代码,分别使用page.loadtemplate方法去加载我们已经写好的两套模版组中的模版,代码如下。
private void Button1_Click(object sender, System.EventArgs e)
{
// Load templates
DataList1.AlternatingItemTemplate =
Page.LoadTemplate("AltItemTempate.ascx");
DataList1.ItemTemplate =Page.LoadTemplate("ItemTemplate.ascx");
DataList1.HeaderTemplate =Page.LoadTemplate("HeadTemplate.ascx");
DataList1.FooterTemplate = Page.LoadTemplate("FootTemplate.ascx");
BindDataGrid();
}
private void Button2_Click(object sender, System.EventArgs e)
{
// Load templates
DataList1.AlternatingItemTemplate =Page.LoadTemplate("AltItemTempate2.ascx");
DataList1.ItemTemplate = Page.LoadTemplate("ItemTemplate2.ascx");
DataList1.HeaderTemplate = Page.LoadTemplate("HeadTemplate2.ascx");
DataList1.FooterTemplate = Page.LoadTemplate("FootTemplate2.ascx");
BindDataGrid();
}
运行效果如下两图,当点不同的按钮时,动态装载不同的模版风格。

做人要厚道,请注明转自chinazhan中国站长(www.ChinaZhan.com)。
<FONT face="verdana" color="green" size="2"><b>ID: </b>
<%# DataBinder.Eval(CType(Container, DataListItem).DataItem, "ID") %>
<b>Name: </b>
<%# DataBinder.Eval(CType(Container, DataListItem).DataItem, "Name") %>
<br>
<b>Address: </b>
<%# DataBinder.Eval(CType(Container, DataListItem).DataItem, "Address") %>
<p>
</FONT>
最后,我们开始创建应用程序,新建一个工程,添加两个按钮和一个datalist控件如下图
[img]/article/UploadPic/2006-8/200681484350749.jpg[img]
之后创建一个binddatagrid的方法,将dataset绑定到datalist控件中去,代码如下:
private void BindDataGrid()
{
dtSet = DB.GetDataSet();
DataList1.DataSource = dtSet.Tables[0].DefaultView;
DataList1.DataBind();
}
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
BindDataGrid();
}
}
最后,分别为两个按钮的clcik事件添加代码,分别使用page.loadtemplate方法去加载我们已经写好的两套模版组中的模版,代码如下。
private void Button1_Click(object sender, System.EventArgs e)
{
// Load templates
DataList1.AlternatingItemTemplate =
Page.LoadTemplate("AltItemTempate.ascx");
DataList1.ItemTemplate =Page.LoadTemplate("ItemTemplate.ascx");
DataList1.HeaderTemplate =Page.LoadTemplate("HeadTemplate.ascx");
DataList1.FooterTemplate = Page.LoadTemplate("FootTemplate.ascx");
BindDataGrid();
}
private void Button2_Click(object sender, System.EventArgs e)
{
// Load templates
DataList1.AlternatingItemTemplate =Page.LoadTemplate("AltItemTempate2.ascx");
DataList1.ItemTemplate = Page.LoadTemplate("ItemTemplate2.ascx");
DataList1.HeaderTemplate = Page.LoadTemplate("HeadTemplate2.ascx");
DataList1.FooterTemplate = Page.LoadTemplate("FootTemplate2.ascx");
BindDataGrid();
}
运行效果如下两图,当点不同的按钮时,动态装载不同的模版风格。

做人要厚道,请注明转自chinazhan中国站长(www.ChinaZhan.com)。
