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

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. namespace UDS.SubModule.UnitiveDocument
  13. {
  14. /// <summary>
  15. /// onlineperson 的摘要说明。
  16. /// </summary>
  17. public class onlineperson : System.Web.UI.Page
  18. {
  19. protected System.Web.UI.WebControls.DataGrid dgrd_OnlinePerson;
  20. //存放页眉文字
  21. private string[] headtext;
  22. private void Page_Load(object sender, System.EventArgs e)
  23. {
  24. if(!Page.IsPostBack)
  25. {
  26. headtext = new String[dgrd_OnlinePerson.Columns.Count];
  27. for(int i=0;i<dgrd_OnlinePerson.Columns.Count;i++)
  28. {
  29. headtext[i] = dgrd_OnlinePerson.Columns[i].HeaderText;
  30. }
  31. ViewState["headtext"] = headtext;
  32. ViewState["SortField"] = "Position_Name";
  33. ViewState["SortDirect"] = "ASC";
  34. Bind();
  35. }
  36. else
  37. {
  38. //把页眉复位
  39. headtext = (string[]) ViewState["headtext"];
  40. for(int i=0;i<dgrd_OnlinePerson.Columns.Count;i++)
  41. {
  42. dgrd_OnlinePerson.Columns[i].HeaderText = headtext[i];
  43. }
  44. }
  45. }
  46. #region Web Form Designer generated code
  47. override protected void OnInit(EventArgs e)
  48. {
  49. //
  50. // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
  51. //
  52. InitializeComponent();
  53. base.OnInit(e);
  54. }
  55. /// <summary>
  56. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  57. /// 此方法的内容。
  58. /// </summary>
  59. private void InitializeComponent()
  60. {    
  61. this.dgrd_OnlinePerson.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.dgrd_OnlinePerson_SortCommand);
  62. this.Load += new System.EventHandler(this.Page_Load);
  63. }
  64. #endregion
  65. private void Bind()
  66. {
  67. UDS.Components.SMS sms = new UDS.Components.SMS();
  68. SqlDataReader dr = sms.GetOnlinePerson();
  69. DataTable dt = UDS.Components.Tools.ConvertDataReaderToDataTable(dr);
  70. dt.DefaultView.Sort = ViewState["SortField"] + " " + ViewState["SortDirect"];
  71. dgrd_OnlinePerson.DataSource = dt.DefaultView;
  72. dgrd_OnlinePerson.DataBind();
  73. }
  74. private void dgrd_OnlinePerson_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
  75. {
  76. if(ViewState["SortField"].ToString() == e.SortExpression)
  77. {
  78. ViewState["SortDirect"] = (ViewState["SortDirect"].ToString()=="ASC")?"DESC":"ASC";
  79. }
  80. else
  81. {
  82. ViewState["SortField"] = e.SortExpression;
  83. ViewState["SortDirect"] = "ASC";
  84. }
  85. foreach(DataGridColumn col in  dgrd_OnlinePerson.Columns)
  86. {
  87. if(col.SortExpression.ToString()==ViewState["SortField"].ToString())
  88. {
  89. if(ViewState["SortDirect"].ToString() == "ASC")
  90. col.HeaderText += "<img src='../../images/asc.gif' border=0/>";
  91. else
  92. col.HeaderText += "<img src='../../images/desc.gif' border=0/>";
  93. }
  94. }
  95. Bind();
  96. }
  97. private void dgrd_OnlinePerson_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
  98. {
  99. }
  100. }
  101. }