AdminMenu.ascx.cs
上传用户:xiecaij
上传日期:2015-02-08
资源大小:2016k
文件大小:2k
源码类别:

百货/超市行业

开发平台:

ASP/ASPX

  1. namespace admin
  2. {
  3. using System;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Web;
  7. using System.Web.UI.WebControls;
  8. using System.Web.UI.HtmlControls;
  9. using System.Xml;
  10. /// <summary>
  11. /// AdminMenu 的摘要说明。
  12. /// </summary>
  13. public class AdminMenu : System.Web.UI.UserControl
  14. {
  15. protected System.Web.UI.WebControls.DataList MyList;
  16. private void Page_Load(object sender, System.EventArgs e)
  17. {
  18. string selectionID = Request.Params["selection"];
  19. if ( selectionID != null)
  20. {
  21. MyList.SelectedIndex = Int32.Parse(selectionID);
  22. }
  23. BindMenu(Session["RoleId"].ToString());
  24. }
  25. /// <summary>
  26. /// 从XML文件读入管理员目录的列表项目,并绑定到目录
  27. /// </summary>
  28. private void BindMenu(string roleId)
  29. {
  30. System.Xml.XmlDocument doc = new XmlDocument();
  31. doc.Load(Server.MapPath("AdminMenu.xml"));
  32. XmlNode itemNode = doc.DocumentElement;
  33. DataTable menuList = new DataTable();
  34. menuList.Columns.Add("ItemName");
  35. menuList.Columns.Add("ItemUrl");
  36. string itemName, itemUrl, itemRole;
  37. string []rowItem = new string[2];
  38. foreach (XmlNode node in itemNode)
  39. {
  40. itemRole = node.Attributes["RoleId"].Value;
  41. if (roleId == "2")
  42. {
  43. if (  itemRole == roleId)
  44. {
  45. itemName = node.Attributes["ItemName"].Value;
  46. itemUrl = node.Attributes["ItemUrl"].Value;
  47. rowItem[0] = itemName;
  48. rowItem[1] = itemUrl;
  49. menuList.Rows.Add(rowItem);
  50. }
  51. }
  52. else
  53. {
  54. itemName = node.Attributes["ItemName"].Value;
  55. itemUrl = node.Attributes["ItemUrl"].Value;
  56. rowItem[0] = itemName;
  57. rowItem[1] = itemUrl;
  58. menuList.Rows.Add(rowItem);
  59. }
  60. }
  61. MyList.DataSource = menuList.DefaultView;
  62. MyList.DataBind();
  63. }
  64. #region Web 窗体设计器生成的代码
  65. override protected void OnInit(EventArgs e)
  66. {
  67. //
  68. // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
  69. //
  70. InitializeComponent();
  71. base.OnInit(e);
  72. }
  73. /// <summary>
  74. /// 设计器支持所需的方法 - 不要使用代码编辑器
  75. /// 修改此方法的内容。
  76. /// </summary>
  77. private void InitializeComponent()
  78. {
  79. this.Load += new System.EventHandler(this.Page_Load);
  80. }
  81. #endregion
  82. }
  83. }