USBKey_setup.aspx.cs
上传用户:cha0314
上传日期:2014-03-02
资源大小:12522k
文件大小:6k
源码类别:

C#编程

开发平台:

C#

  1. using System;
  2. using System.Collections;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Web;
  7. using System.Web.SessionState;
  8. using System.Web.UI;
  9. using System.Web.UI.WebControls;
  10. using System.Web.UI.HtmlControls;
  11. using UDS.Components;
  12. using System.Data.SqlClient;
  13. namespace UDS.SubModule.USBKey
  14. {
  15. /// <summary>
  16. /// USBKey_setup 的摘要说明。
  17. /// </summary>
  18. public class USBKey_setup : System.Web.UI.Page
  19. {
  20. protected System.Web.UI.WebControls.LinkButton lbOffLine;
  21. protected System.Web.UI.WebControls.LinkButton lbOnline;
  22. protected System.Web.UI.WebControls.CheckBox cb_selectAll;
  23. protected System.Web.UI.WebControls.Button cmdUsR_key;
  24. protected System.Web.UI.WebControls.Button cmdNotUse_key;
  25. protected System.Web.UI.WebControls.DataGrid dbStaffList;
  26. //查看是否有USBKEY的参数,0有,1没有
  27. public static int DisplayType;
  28. #region 页面初始化
  29. private void Page_Load(object sender, System.EventArgs e)
  30. {
  31. cb_selectAll.Attributes["onclick"]="return selectAll();";
  32. cmdUsR_key.Attributes.Add("Onclick","javascript:return confirm('是否让选中的人开始使用USB_Key?');");
  33. cmdNotUse_key.Attributes.Add("Onclick","javascript:return confirm('是否让选中的人停止使用USB_Key?');");
  34. if(Request.QueryString["DisplayType"]!=null)
  35. {
  36. if(Request.QueryString["DisplayType"].ToString()!="")
  37. DisplayType = Int32.Parse(Request.QueryString["DisplayType"].ToString());
  38. else
  39. DisplayType = 1;
  40. }
  41. else
  42. DisplayType =1;
  43. if(DisplayType==1)
  44. {
  45. cmdNotUse_key.Visible =true;
  46. cmdUsR_key.Visible =false;
  47. }
  48. else
  49. {
  50. cmdNotUse_key.Visible= false;
  51. cmdUsR_key.Visible =true;
  52. }
  53. if(!Page.IsPostBack)
  54. {
  55. BindGrid();
  56. }
  57. }
  58. #endregion
  59. #region 遍历DataGrid获得checked的ID
  60. private string GetSelectedItemID(string controlID)
  61. {
  62. String selectedID;
  63. selectedID = "";
  64. //遍历DataGrid获得checked的ID
  65. foreach (DataGridItem item in dbStaffList.Items)
  66. {
  67. if(((CheckBox)item.FindControl(controlID)).Checked==true )
  68. selectedID += dbStaffList.DataKeys[item.ItemIndex] + ",";
  69. }
  70. if(selectedID.Length>0)
  71. selectedID=selectedID.Substring(0,selectedID.Length-1);
  72. return selectedID;
  73. }
  74. #endregion
  75. #region 翻页事件
  76. public void DataGrid_PageChanged(object sender,DataGridPageChangedEventArgs e)
  77. {
  78. dbStaffList.CurrentPageIndex = e.NewPageIndex;
  79. BindGrid();
  80. }
  81. #endregion
  82. #region DataGrid数据绑定
  83. private void BindGrid()
  84. {
  85. SqlDataReader dr; //存放人物的数据
  86. Database db = new Database();
  87. SqlParameter[] prams = {
  88.    db.MakeInParam("@StaffType",SqlDbType.Bit,1,DisplayType)
  89.    };
  90. db.RunProc("sp_GetStaffisneedkey",prams,out dr);
  91. DataTable dt =Tools.ConvertDataReaderToDataTable(dr);
  92. dbStaffList.DataSource = dt.DefaultView;
  93. dbStaffList.DataBind();
  94. }
  95. #endregion
  96. #region Web 窗体设计器生成的代码
  97. override protected void OnInit(EventArgs e)
  98. {
  99. //
  100. // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
  101. //
  102. InitializeComponent();
  103. base.OnInit(e);
  104. }
  105. /// <summary>
  106. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  107. /// 此方法的内容。
  108. /// </summary>
  109. private void InitializeComponent()
  110. {    
  111. this.lbOnline.Click += new System.EventHandler(this.lbOnline_Click);
  112. this.lbOffLine.Click += new System.EventHandler(this.lbOffLine_Click);
  113. this.cmdUsR_key.Click += new System.EventHandler(this.cmdUsR_key_Click);
  114. this.cmdNotUse_key.Click += new System.EventHandler(this.cmdNotUse_key_Click);
  115. this.dbStaffList.ItemCreated += new System.Web.UI.WebControls.DataGridItemEventHandler(this.dbStaffList_ItemCreated);
  116. this.Load += new System.EventHandler(this.Page_Load);
  117. }
  118. #endregion
  119. #region 选择使用KEY的员工
  120. private void lbOnline_Click(object sender, System.EventArgs e)
  121. {
  122. Server.Transfer("USBKey_setup.aspx?DisplayType=0");
  123. }
  124. #endregion
  125. #region 选择不使用KEY的员工
  126. private void lbOffLine_Click(object sender, System.EventArgs e)
  127. {
  128. Server.Transfer("USBKey_setup.aspx?DisplayType=1");
  129. }
  130. #endregion
  131. #region 取消使用KEY
  132. private void cmdNotUse_key_Click(object sender, System.EventArgs e)
  133. {
  134. string selectedID = GetSelectedItemID("Staff_ID");
  135. if(selectedID!="")
  136. {
  137. UDS.Components.Staff person = new UDS.Components.Staff();
  138. if(person.SetIsNeedKey(selectedID,false)==true)
  139. {
  140. BindGrid();
  141. }
  142. person = null;
  143. }
  144. else
  145. Response.Write("<script language=javascript>alert('您没有选择任何人员!');</script>");
  146. }
  147. #endregion
  148. #region 使用KEY
  149. private void cmdUsR_key_Click(object sender, System.EventArgs e)
  150. {
  151. string selectedID = GetSelectedItemID("Staff_ID");
  152. if(selectedID!="")
  153. {
  154. UDS.Components.Staff person = new UDS.Components.Staff();
  155. if(person.SetIsNeedKey(selectedID,true)==true)
  156. {
  157. //DisplayType=0;
  158. BindGrid();
  159. }
  160. person = null;
  161. }
  162. else
  163. Response.Write("<script language=javascript>alert('您没有选择任何人员!');</script>");
  164. }
  165. #endregion
  166. #region 可以手动改变DataGrid的列宽
  167. private void dbStaffList_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
  168. {
  169. if(e.Item.ItemType == ListItemType.Header)
  170. {
  171. if(true)//如果允许改变列宽
  172. {
  173. for(int i=0;i<e.Item.Cells.Count;i++)
  174. {
  175. e.Item.Cells[i].Attributes.Add("onmousemove","SyDG_moveOnTd(this)");
  176. e.Item.Cells[i].Attributes.Add("onmousedown","SyDG_downOnTd(this)");
  177. e.Item.Cells[i].Attributes.Add("onmouseup","this.mouseDown=false");
  178. e.Item.Cells[i].Attributes.Add("onmouseout","this.mouseDown=false");
  179. }
  180. }
  181.              }
  182. }
  183. #endregion
  184. }
  185. }