C# Xml与DataList实现导航功能
2007-11-20 14:22
453 查看
Company.xml
<?xml version="1.0" encoding="utf-8" ?>
<Items>
<Item ID="0" ItemName="添加公司" ItemUrl="CompanyInfoAdd.aspx"></Item>
<Item ID="1" ItemName="公司信息" ItemUrl="CompanyList.aspx"></Item>
<Item ID="2" ItemName="用户注销" ItemUrl="../Personal/LoginOut.aspx"></Item>
<Item ID="3" ItemName="修改密码" ItemUrl="../Admin/Password.aspx"></Item>
</Items>
<LINK href="../Css/NewPaper.css" type="text/css" rel="stylesheet">
<TABLE id="Table1" height="100%" width="145" border="0">
<TR vAlign="top">
<TD bgColor="#efefef" colSpan="2">
<asp:DataList id="dstMyList" EnableViewState="false"
SelectedItemStyle-BackColor="black" width="145"
cellspacing="0" cellpadding="3" runat="server">
<SelectedItemStyle
BackColor="Black"></SelectedItemStyle>
<SelectedItemTemplate>
<asp:HyperLink id=HyperLink2
runat="server" NavigateUrl='<%# DataBinder.Eval(Container.DataItem, "ItemUrl") +
"?selection=" + Container.ItemIndex %>' Text='<%# DataBinder.Eval
(Container.DataItem, "ItemName") %>' cssclass="MenuSelected">
</asp:HyperLink>
</SelectedItemTemplate>
<ItemTemplate>
<asp:HyperLink id=HyperLink1
runat="server" NavigateUrl='<%# DataBinder.Eval(Container.DataItem, "ItemUrl") +
"?selection=" + Container.ItemIndex %>' Text='<%# DataBinder.Eval
(Container.DataItem, "ItemName") %>' cssclass="MenuUnselected">
</asp:HyperLink>
</ItemTemplate>
</asp:DataList></TD>
</TR>
</TABLE>
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
string selectionID = Request.Params["selection"]!=null?Request.Params["selection"].ToString():"1";
if(selectionID!=null)
{
this.dstMyList.SelectedIndex = Convert.ToInt32(selectionID);
}
MenuBind();
}
private void MenuBind()
{
this.dstMyList.DataSource = new CompanyAccess().GetMenu(Server.MapPath("Company.xml"));
this.dstMyList.DataBind();
}
public DataTable GetMenu(string file)
{
System.Xml.XmlDataDocument doc = new XmlDataDocument();
doc.Load(file);
System.Xml.XmlNode node = doc.DocumentElement;
DataTable dt = new DataTable();
dt.Columns.Add("ItemName");
dt.Columns.Add("ItemUrl");
string itemName = string.Empty;
string itemUrl = string.Empty;
string []rowItem = new string[2];
foreach(XmlNode xd in node)
{
itemName = xd.Attributes["ItemName"].Value;
itemUrl = xd.Attributes["ItemUrl"].Value;
rowItem[0] = itemName;
rowItem[1] = itemUrl;
dt.Rows.Add(rowItem);
}
return dt;
}
<?xml version="1.0" encoding="utf-8" ?>
<Items>
<Item ID="0" ItemName="添加公司" ItemUrl="CompanyInfoAdd.aspx"></Item>
<Item ID="1" ItemName="公司信息" ItemUrl="CompanyList.aspx"></Item>
<Item ID="2" ItemName="用户注销" ItemUrl="../Personal/LoginOut.aspx"></Item>
<Item ID="3" ItemName="修改密码" ItemUrl="../Admin/Password.aspx"></Item>
</Items>
<LINK href="../Css/NewPaper.css" type="text/css" rel="stylesheet">
<TABLE id="Table1" height="100%" width="145" border="0">
<TR vAlign="top">
<TD bgColor="#efefef" colSpan="2">
<asp:DataList id="dstMyList" EnableViewState="false"
SelectedItemStyle-BackColor="black" width="145"
cellspacing="0" cellpadding="3" runat="server">
<SelectedItemStyle
BackColor="Black"></SelectedItemStyle>
<SelectedItemTemplate>
<asp:HyperLink id=HyperLink2
runat="server" NavigateUrl='<%# DataBinder.Eval(Container.DataItem, "ItemUrl") +
"?selection=" + Container.ItemIndex %>' Text='<%# DataBinder.Eval
(Container.DataItem, "ItemName") %>' cssclass="MenuSelected">
</asp:HyperLink>
</SelectedItemTemplate>
<ItemTemplate>
<asp:HyperLink id=HyperLink1
runat="server" NavigateUrl='<%# DataBinder.Eval(Container.DataItem, "ItemUrl") +
"?selection=" + Container.ItemIndex %>' Text='<%# DataBinder.Eval
(Container.DataItem, "ItemName") %>' cssclass="MenuUnselected">
</asp:HyperLink>
</ItemTemplate>
</asp:DataList></TD>
</TR>
</TABLE>
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
string selectionID = Request.Params["selection"]!=null?Request.Params["selection"].ToString():"1";
if(selectionID!=null)
{
this.dstMyList.SelectedIndex = Convert.ToInt32(selectionID);
}
MenuBind();
}
private void MenuBind()
{
this.dstMyList.DataSource = new CompanyAccess().GetMenu(Server.MapPath("Company.xml"));
this.dstMyList.DataBind();
}
public DataTable GetMenu(string file)
{
System.Xml.XmlDataDocument doc = new XmlDataDocument();
doc.Load(file);
System.Xml.XmlNode node = doc.DocumentElement;
DataTable dt = new DataTable();
dt.Columns.Add("ItemName");
dt.Columns.Add("ItemUrl");
string itemName = string.Empty;
string itemUrl = string.Empty;
string []rowItem = new string[2];
foreach(XmlNode xd in node)
{
itemName = xd.Attributes["ItemName"].Value;
itemUrl = xd.Attributes["ItemUrl"].Value;
rowItem[0] = itemName;
rowItem[1] = itemUrl;
dt.Rows.Add(rowItem);
}
return dt;
}
相关文章推荐
- Xml与DataList实现导航功能
- Xml与DataList实现导航功能
- C#的XML实现记住密码功能
- C#实现XML文档的增删改查功能示例
- C#的XML实现记住密码功能
- xml学习(三)---利用xml文件实现数据岛功能(网页显示xml文件中的内容免C#代码操作xml文件)
- C#使用XmlEDocument实现数据文件安全存储功能
- javascript实现基于XML的导航功能
- datalist控件(c#)实现分页功能
- C#使用XmlEDocument实现数据文件安全存储功能
- 晚上无聊象征性收取了网友100元辛苦费,实现支持多语言功能的XML语言包版的C#的ASP.NET多语言支持例子程序
- C#实现 ORACLE的分页功能
- 用C#实现实现简单的 Ping 的功能,用于测试网络是否已经联通
- C#实现界面与功能的分离:Ribbon界面
- 使用 JavaScript 实现灵活的固定导航功能
- C# 优化基于插件的开发框架实现Ribbon界面与功能的分离附DEMO
- 记事本(c#实现,包含,打开,保存,另存为,复制,粘贴等功能)
- C#实现更改IP功能源代码
- Android开发之Navigationdrawer导航抽屉功能的实现(源代码分享)
- C#+AE实现类似Identify功能