RightListView.aspx.cs
上传用户:xgw_05
上传日期:2009-12-11
资源大小:20208k
文件大小:4k
源码类别:

OA系统

开发平台:

C#

  1. using System;
  2. using System.Collections;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Data.SqlClient;
  6. using System.Drawing;
  7. using System.Web;
  8. using System.Web.SessionState;
  9. using System.Web.UI;
  10. using System.Web.UI.WebControls;
  11. using System.Web.UI.HtmlControls;
  12. using UDS.Components;
  13. namespace UDS.SubModule.AssginRule
  14. {
  15. /// <summary>
  16. /// RightListView 的摘要说明。
  17. /// </summary>
  18. public class RightListView : System.Web.UI.Page
  19. {
  20. public string strObjID;
  21. public string DisplayType;
  22. protected System.Web.UI.HtmlControls.HtmlInputButton btn_AddRight;
  23. protected System.Web.UI.HtmlControls.HtmlInputButton btn_DelRight;
  24. protected System.Web.UI.WebControls.DataGrid RightsGrid;
  25. /// <summary>
  26. /// 得到datagrid checkbox的value
  27. /// </summary>
  28. /// <param name="controlID">checkbox控件的ID</param>
  29. /// <returns>该checkbox的值</returns>
  30. private string GetSelectedItemID(string controlID)
  31. {
  32. String selectedID;
  33. selectedID = "";
  34. //遍历DataGrid获得checked的ID
  35. foreach (DataGridItem item in RightsGrid.Items)
  36. {
  37. if(((CheckBox)item.FindControl(controlID)).Checked==true )
  38. selectedID += RightsGrid.DataKeys[item.ItemIndex] + ",";
  39. }
  40. if(selectedID.Length>0)
  41. selectedID=selectedID.Substring(0,selectedID.Length-1);
  42. return selectedID;
  43. }
  44. private void Page_Load(object sender, System.EventArgs e)
  45. {
  46. strObjID = Request.QueryString["ObjID"].ToString();
  47. DisplayType = Request.QueryString["DisplayType"].ToString();
  48. // 在此处放置用户代码以初始化页面
  49. if(!Page.IsPostBack)
  50. {
  51. BindGrid();
  52. }
  53. }
  54. #region Web Form Designer generated code
  55. override protected void OnInit(EventArgs e)
  56. {
  57. //
  58. // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
  59. //
  60. InitializeComponent();
  61. base.OnInit(e);
  62. }
  63. /// <summary>
  64. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  65. /// 此方法的内容。
  66. /// </summary>
  67. private void InitializeComponent()
  68. {    
  69. this.RightsGrid.SelectedIndexChanged += new System.EventHandler(this.RightsGrid_SelectedIndexChanged);
  70. this.btn_DelRight.ServerClick += new System.EventHandler(this.btn_DelRight_ServerClick);
  71. this.btn_AddRight.ServerClick += new System.EventHandler(this.btn_AddRight_ServerClick);
  72. this.Load += new System.EventHandler(this.Page_Load);
  73. }
  74. #endregion
  75. #region 翻页事件
  76. public void DataGrid_PageChanged(object sender,DataGridPageChangedEventArgs e)
  77. {
  78. RightsGrid.CurrentPageIndex = e.NewPageIndex;
  79. BindGrid();
  80. }
  81. #endregion
  82. public void BindGrid()
  83. {
  84. SqlDataReader dr; //存放权限数据
  85. string spName;//存储过程名
  86. spName = "";
  87. Database db = new Database();
  88. SqlParameter[] prams = new SqlParameter[1];
  89. switch(DisplayType)
  90. {
  91. case "0":
  92. prams[0] = db.MakeInParam("@PositionID",SqlDbType.Int,4,Int32.Parse(strObjID)); 
  93. spName = "sp_GetPositionRightList";
  94. break;
  95. case "1":
  96. prams[0] = db.MakeInParam("@Teamid",SqlDbType.Int,4,Int32.Parse(strObjID)); 
  97. spName = "sp_GetTeamRightList";
  98. break;
  99. case "2":
  100. prams[0] = db.MakeInParam("@RoleID",SqlDbType.Int,4,Int32.Parse(strObjID)); 
  101. spName = "sp_GetRoleRightList";
  102. break;
  103. default:
  104. break;
  105. //错误处理
  106. }
  107. db.RunProc(spName,prams,out dr);
  108. DataTable dt =Tools.ConvertDataReaderToDataTable(dr);
  109. RightsGrid.DataSource = dt.DefaultView;
  110. RightsGrid.DataBind();
  111. }
  112. private void btn_DelRight_ServerClick(object sender, System.EventArgs e)
  113. {
  114. string IDs=GetSelectedItemID("cb_RightID").Trim();
  115. //得到选中的datagrid的checkbox的value
  116. if(IDs!="")
  117. {
  118. UDS.Components.AssignRights ar = new UDS.Components.AssignRights();
  119. ar.DeleteRight(IDs);
  120. ar = null;
  121. Response.Redirect("RightListView.aspx?ObjID="+strObjID+"&DisplayType="+DisplayType);
  122. }
  123. }
  124. private void btn_AddRight_ServerClick(object sender, System.EventArgs e)
  125. {
  126. Response.Redirect("Treeview.aspx?SrcID="+strObjID+"&DisplayType="+DisplayType);
  127. }
  128. private void RightsGrid_SelectedIndexChanged(object sender, System.EventArgs e)
  129. {
  130. }            
  131. }
  132. }