SelectOrganization.aspx.cs
上传用户:tree100901
上传日期:2007-06-03
资源大小:2295k
文件大小:6k
源码类别:

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 OA
  13. {
  14. /// <summary>
  15. /// SelectOrganization 的摘要说明。
  16. /// </summary>
  17. public class SelectOrganization : System.Web.UI.Page
  18. {
  19. protected System.Web.UI.WebControls.DropDownList DropDownList1;
  20. protected System.Web.UI.WebControls.Button Reset;
  21. protected System.Web.UI.HtmlControls.HtmlInputButton Add;
  22. protected System.Web.UI.HtmlControls.HtmlInputButton Remove;
  23. protected System.Web.UI.HtmlControls.HtmlInputButton Removeall;
  24. protected Microsoft.Web.UI.WebControls.TreeView TreeView1;
  25. protected System.Data.SqlClient.SqlConnection MyConnection;
  26. protected System.Data.SqlClient.SqlDataAdapter MyCommand;
  27. protected System.Data.SqlClient.SqlDataAdapter MyCommand0;
  28. protected System.Data.SqlClient.SqlDataAdapter MyCommand1;
  29. protected System.Data.DataSet ds;
  30. protected System.Web.UI.WebControls.ListBox Target;
  31. protected System.Web.UI.WebControls.Button Send;
  32. private void Page_Load(object sender, System.EventArgs e)
  33. {
  34. if (Page.IsPostBack)
  35. {
  36. if(Request.Form["Isdbclick"].ToString()=="true")
  37. Add_SigleClick();
  38. }
  39. if(!IsPostBack)
  40. {
  41. MyConnection=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
  42. MyConnection.Open();
  43. ds= new DataSet();
  44. SqlDataAdapter MyCommand0=new SqlDataAdapter("SystemSelect",MyConnection);
  45. MyCommand0.SelectCommand.CommandType = CommandType.StoredProcedure;
  46. MyCommand0.Fill(ds,"System");
  47.                 DropDownList1.DataSource = ds.Tables["System"].DefaultView;
  48. DropDownList1.DataTextField = "SystemName";
  49. DropDownList1.DataValueField = "SystemID";
  50.                 DropDownList1.DataBind();
  51. SqlDataAdapter MyCommand = new SqlDataAdapter("SelectOrganization0",MyConnection);
  52. MyCommand.SelectCommand.CommandType = CommandType.StoredProcedure;
  53. MyCommand.SelectCommand.Parameters.Add(new SqlParameter("@SystemID", SqlDbType.NVarChar, 50));
  54. MyCommand.SelectCommand.Parameters["@SystemID"].Value = "1";
  55. MyCommand.Fill(ds,"Root");
  56. for(int i = 0; i<ds.Tables["Root"].Rows.Count; i++)
  57. {
  58. Microsoft.Web.UI.WebControls.TreeNode tree1 = new Microsoft.Web.UI.WebControls.TreeNode();
  59. tree1.ID = ds.Tables["Root"].Rows[i]["OrganizationID"].ToString();
  60. tree1.Text = ds.Tables["Root"].Rows[i]["OrganizationName"].ToString();
  61. TreeView1.Nodes.Add(tree1);
  62. }
  63. }
  64. // 在此处放置用户代码以初始化页面
  65. }
  66. #region Web 窗体设计器生成的代码
  67. override protected void OnInit(EventArgs e)
  68. {
  69. //
  70. // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
  71. //
  72. InitializeComponent();
  73. base.OnInit(e);
  74. }
  75. /// <summary>
  76. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  77. /// 此方法的内容。
  78. /// </summary>
  79. private void InitializeComponent()
  80. {    
  81. this.Send.Click += new System.EventHandler(this.Send_Click);
  82. this.Add.ServerClick += new System.EventHandler(this.Add_ServerClick);
  83. this.Remove.ServerClick += new System.EventHandler(this.Remove_ServerClick);
  84. this.Removeall.ServerClick += new System.EventHandler(this.Removeall_ServerClick);
  85. this.Load += new System.EventHandler(this.Page_Load);
  86. }
  87. #endregion
  88. private void Add_SigleClick()
  89. {
  90. Microsoft.Web.UI.WebControls.TreeNode tmpNode = new Microsoft.Web.UI.WebControls.TreeNode();
  91. tmpNode = TreeView1.GetNodeFromIndex(TreeView1.SelectedNodeIndex);
  92. AddTarget(tmpNode);
  93. }
  94. private void Add_ServerClick(object sender, System.EventArgs e)
  95. {
  96. Microsoft.Web.UI.WebControls.TreeNode tmpNode = new Microsoft.Web.UI.WebControls.TreeNode();
  97. tmpNode = TreeView1.GetNodeFromIndex(TreeView1.SelectedNodeIndex);
  98. AddTarget(tmpNode);
  99. }
  100. private void Remove_ServerClick(object sender, System.EventArgs e)
  101. {
  102. Target.Items.Remove(Target.SelectedItem);
  103. }
  104. private void Removeall_ServerClick(object sender, System.EventArgs e)
  105. {
  106. Target.Items.Clear();
  107. }
  108. public void DropDown_Selected(object sender, System.EventArgs e)
  109. {
  110. MyConnection=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
  111. MyConnection.Open();
  112. ds= new DataSet();
  113. TreeView1.Nodes.Clear();
  114. SqlDataAdapter MyCommand = new SqlDataAdapter("SelectOrganization0",MyConnection);
  115. MyCommand.SelectCommand.CommandType = CommandType.StoredProcedure;
  116. MyCommand.SelectCommand.Parameters.Add(new SqlParameter("@SystemID", SqlDbType.NVarChar, 50));
  117. MyCommand.SelectCommand.Parameters["@SystemID"].Value = DropDownList1.SelectedValue;
  118. MyCommand.Fill(ds,"Root");
  119. for(int i = 0; i<ds.Tables["Root"].Rows.Count; i++)
  120. {
  121. Microsoft.Web.UI.WebControls.TreeNode tree1 = new Microsoft.Web.UI.WebControls.TreeNode();
  122. tree1.ID = ds.Tables["Root"].Rows[i]["OrganizationID"].ToString();
  123. tree1.Text = ds.Tables["Root"].Rows[i]["OrganizationName"].ToString();
  124. TreeView1.Nodes.Add(tree1);
  125. } MyCommand.Fill(ds,"Root");
  126. }
  127. private void AddTarget(Microsoft.Web.UI.WebControls.TreeNode node)
  128. {
  129. if(node.Nodes.Count>0)
  130. {
  131. foreach(Microsoft.Web.UI.WebControls.TreeNode tempNode in node.Nodes)
  132. {
  133. AddTarget(tempNode);
  134. }
  135. }
  136. else
  137. {
  138. if(node.ID!="000")
  139. {
  140. ListItem crItem = null;
  141. String searchText = "("+DropDownList1.SelectedItem.Text+")"+node.Text+"("+node.ID+")";
  142. crItem = Target.Items.FindByText(searchText);
  143. if(crItem == null)
  144. Target.Items.Add(new ListItem("("+DropDownList1.SelectedItem.Text+")"+node.Text+"("+node.ID+")"));
  145. else
  146. RegisterStartupScript("alert","<script>alert('列表项中"+crItem.Text+"已存在!')</script>");
  147. }
  148. }
  149. }
  150. private void Send_Click(object sender, System.EventArgs e)
  151. {
  152. if(Target.Items.Count>0)
  153. {
  154. string str ="";
  155. foreach(ListItem item in Target.Items)
  156. {
  157. str += ","+item.Text;
  158. }
  159. str = str.Substring(1);
  160. Response.Write("<script>window.returnValue='"+str+"';window.close();</script>");
  161. }
  162. else
  163. RegisterStartupScript("alert","<script>alert('你未选择任何列表项!')</script>");
  164. }
  165. }
  166. }