using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using Core.Mes.ClientFrameWork; using Core.Mes.IBaseInterface; //using Core.Mes.ServerFrameWork; using System.Data; using Infragistics.Win.UltraWinTree; namespace Core.Mes.ClientPurviewManager { /// /// FrmSelUserID 的摘要说明。 /// public class FrmSelUserID : System.Windows.Forms.Form { private Infragistics.Win.UltraWinListBar.UltraListBar ultraListBar1; private Infragistics.Win.UltraWinEditors.UltraTextEditor ultraTextEditor1; private Infragistics.Win.Misc.UltraButton btnOK; private Infragistics.Win.Misc.UltraButton btnCancle; private Core.Mes.ClientPurviewManager.UcDepartment ucDepartment1; /// /// 必需的设计器变量。 /// private System.ComponentModel.Container components = null; public FrmSelUserID() { // // Windows 窗体设计器支持所必需的 // InitializeComponent(); // // TODO: 在 InitializeComponent 调用后添加任何构造函数代码 // } /// /// 清理所有正在使用的资源。 /// protected override void Dispose( bool disposing ) { if( disposing ) { if(components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region Windows 窗体设计器生成的代码 /// /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmSelUserID)); Infragistics.Win.UltraWinListBar.Group group1 = new Infragistics.Win.UltraWinListBar.Group(true); Infragistics.Win.UltraWinListBar.Group group2 = new Infragistics.Win.UltraWinListBar.Group(); Infragistics.Win.UltraWinListBar.Group group3 = new Infragistics.Win.UltraWinListBar.Group(); Infragistics.Win.UltraWinListBar.Group group4 = new Infragistics.Win.UltraWinListBar.Group(); Infragistics.Win.UltraWinListBar.Group group5 = new Infragistics.Win.UltraWinListBar.Group(); Infragistics.Win.UltraWinListBar.Group group6 = new Infragistics.Win.UltraWinListBar.Group(); Infragistics.Win.UltraWinListBar.Group group7 = new Infragistics.Win.UltraWinListBar.Group(); this.ultraListBar1 = new Infragistics.Win.UltraWinListBar.UltraListBar(); this.ultraTextEditor1 = new Infragistics.Win.UltraWinEditors.UltraTextEditor(); this.btnOK = new Infragistics.Win.Misc.UltraButton(); this.btnCancle = new Infragistics.Win.Misc.UltraButton(); this.ucDepartment1 = new Core.Mes.ClientPurviewManager.UcDepartment(); ((System.ComponentModel.ISupportInitialize)(this.ultraTextEditor1)).BeginInit(); this.SuspendLayout(); // // ultraListBar1 // this.ultraListBar1.DefaultIcon = ((System.Drawing.Icon)(resources.GetObject("ultraListBar1.DefaultIcon"))); this.ultraListBar1.DefaultStyle = Infragistics.Win.UltraWinListBar.Style.SmallIcons; this.ultraListBar1.FlatMode = true; this.ultraListBar1.GroupHeadersVisible = false; group1.Style = Infragistics.Win.UltraWinListBar.Style.SmallIcons; group1.Text = "员工姓名"; group2.Style = Infragistics.Win.UltraWinListBar.Style.SmallIcons; group3.Style = Infragistics.Win.UltraWinListBar.Style.SmallIcons; group4.Style = Infragistics.Win.UltraWinListBar.Style.SmallIcons; group5.Style = Infragistics.Win.UltraWinListBar.Style.SmallIcons; group6.Style = Infragistics.Win.UltraWinListBar.Style.SmallIcons; group7.Style = Infragistics.Win.UltraWinListBar.Style.SmallIcons; this.ultraListBar1.Groups.Add(group1); this.ultraListBar1.Groups.Add(group2); this.ultraListBar1.Groups.Add(group3); this.ultraListBar1.Groups.Add(group4); this.ultraListBar1.Groups.Add(group5); this.ultraListBar1.Groups.Add(group6); this.ultraListBar1.Groups.Add(group7); this.ultraListBar1.Location = new System.Drawing.Point(196, 1); this.ultraListBar1.Name = "ultraListBar1"; this.ultraListBar1.Size = new System.Drawing.Size(164, 475); this.ultraListBar1.ItemSelected += new Infragistics.Win.UltraWinListBar.ItemEventHandler(this.ultraListBar1_ItemSelected); // // ultraTextEditor1 // this.ultraTextEditor1.AutoSize = true; this.ultraTextEditor1.Location = new System.Drawing.Point(219, 490); this.ultraTextEditor1.Name = "ultraTextEditor1"; this.ultraTextEditor1.Size = new System.Drawing.Size(120, 21); this.ultraTextEditor1.TabIndex = 1; // // btnOK // this.btnOK.Location = new System.Drawing.Point(205, 524); this.btnOK.Name = "btnOK"; this.btnOK.Size = new System.Drawing.Size(64, 26); this.btnOK.TabIndex = 2; this.btnOK.Text = "确定"; this.btnOK.Click += new System.EventHandler(this.btnOK_Click); // // btnCancle // this.btnCancle.Location = new System.Drawing.Point(285, 524); this.btnCancle.Name = "btnCancle"; this.btnCancle.Size = new System.Drawing.Size(64, 26); this.btnCancle.TabIndex = 3; this.btnCancle.Text = "取消"; this.btnCancle.Click += new System.EventHandler(this.btnCancle_Click); // // ucDepartment1 // this.ucDepartment1.Dock = System.Windows.Forms.DockStyle.Left; this.ucDepartment1.Location = new System.Drawing.Point(0, 0); this.ucDepartment1.Name = "ucDepartment1"; this.ucDepartment1.Size = new System.Drawing.Size(192, 564); this.ucDepartment1.TabIndex = 0; // // FrmSelUserID // this.AutoScaleBaseSize = new System.Drawing.Size(6, 14); this.ClientSize = new System.Drawing.Size(360, 564); this.Controls.Add(this.ucDepartment1); this.Controls.Add(this.btnCancle); this.Controls.Add(this.btnOK); this.Controls.Add(this.ultraTextEditor1); this.Controls.Add(this.ultraListBar1); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; this.MaximizeBox = false; this.MinimizeBox = false; this.Name = "FrmSelUserID"; this.ShowInTaskbar = false; this.StartPosition = System.Windows.Forms.FormStartPosition.Manual; this.Text = "员工姓名"; this.Load += new System.EventHandler(this.FrmSelUserID_Load); ((System.ComponentModel.ISupportInitialize)(this.ultraTextEditor1)).EndInit(); this.ResumeLayout(false); } #endregion #region " Valiable " public string _currSelectID; public bool _changFlag = false; public DataSet _userData; public DataSet _departmentData; #endregion private void ultraListBar1_ItemSelected(object sender, Infragistics.Win.UltraWinListBar.ItemEventArgs e) { this.ultraTextEditor1.Text = e.Item.Text ; this.ultraTextEditor1.Tag = e.Item.Key ; } private void btnOK_Click(object sender, System.EventArgs e) { _changFlag = false; if (this.ultraTextEditor1.Tag != null) { if (this._currSelectID == this.ultraTextEditor1.Tag .ToString()) { _changFlag = false; } else { _changFlag = true; _currSelectID = this.ultraTextEditor1.Tag .ToString(); } } this.Close(); } private void btnCancle_Click(object sender, System.EventArgs e) { _changFlag = false; this.Close(); } private void ChangDepart(string strWhere) { try { string strFilter = GetRefreshWhereUser(strWhere); this._userData.Tables[0].DefaultView.RowFilter = strFilter; this._userData.Tables[0].DefaultView.Sort = "NAME"; this.ultraListBar1.Groups[0].Items.Clear(); foreach (DataRowView myDRV in this._userData.Tables[0].DefaultView) { try { this.ultraListBar1.Groups[0].Items.Add((string)myDRV["USERID"],(string)myDRV["NAME"]); } catch{} } } catch (Exception ex) { Console.WriteLine(ex.Message); this._userData.Tables[0].DefaultView.RowFilter = "1=2"; } } private string GetRefreshWhereUser(string strWhere) { string sqlstr = ""; ArrayList al = this.GetUserID(strWhere); if (al == null || al.Count == 0) { sqlstr = "1=2"; } else { sqlstr += " USERID in ('" + al[0].ToString() + "'"; for (int i = 1 ; i < al.Count ; i++) { sqlstr += ", '" + al[i].ToString() + "' "; } sqlstr += ")"; } return sqlstr; } private ArrayList GetUserID(string strWhere) { ArrayList al = new ArrayList(); DataTable dt = null; if (this._userData == null) dt = null; else dt = this._userData.Tables[0]; if (dt != null) { string strFilter = "DEPARTMENTID in (" + strWhere + ")"; dt.DefaultView.RowFilter = strFilter; for(int i =0; i < dt.DefaultView.Count ; i++) { al.Add(dt.DefaultView[i]["USERID"].ToString()); } return al; } else return null; } private void FrmSelUserID_Load(object sender, System.EventArgs e) { this.ucDepartment1._departmentData = this._departmentData; this.ucDepartment1.RefreshTree(); this.ucDepartment1.ultraTree1.ExpandAll(); this.ucDepartment1.ultraTree1.AfterSelect += new Infragistics.Win.UltraWinTree.AfterNodeSelectEventHandler(ultraTree1_AfterSelect); if (ucDepartment1.ultraTree1.Nodes.Count > 0) ucDepartment1.ultraTree1.Nodes[0].Selected = true; } private void ultraTree1_AfterSelect(object sender, Infragistics.Win.UltraWinTree.SelectEventArgs e) { if (e.NewSelections == null || e.NewSelections.Count == 0) {} else { string str = "'" + e.NewSelections[0].Key + "'"; str = GetSelectedID(ref str, e.NewSelections[0]); ChangDepart(str); } } private string GetSelectedID(ref string str, UltraTreeNode utn) { try { foreach(UltraTreeNode ut in utn.Nodes ) { str += ",'" + ut.Key + "'"; if (ut.Nodes.Count > 0) GetSelectedID(ref str, ut); } return str; } catch { return ""; } } } }