/// <summary> /// 窗体加载事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void FormSelectUser_Load(object sender, EventArgs e) { try { if (m_type == "员工") { if (AllUser == null) { if (DeptCode == null) { AllUser = m_personnelInfo.GetAllInfo().ToList(); } else { string[] dept = DeptCode.Split(';'); if (dept.Length > 0) { string sql = ""; for (int i = 0; i < dept.Length; i++) { if (i == 0) { sql += " and 部门编号 in (select DeptCode from fun_get_BelongDept('" + dept[i] + "'))"; } else if (dept[i] != "") { sql += " or 部门编号 in (select DeptCode from fun_get_BelongDept('" + dept[i] + "'))"; } } AllUser = m_personnelInfo.GetPersonByDept(sql).ToList(); } else { AllUser = m_personnelInfo.GetAllInfo(DeptCode).ToList(); } } } DataGridViewCheckBoxColumn column = new DataGridViewCheckBoxColumn(); column.Visible = true; column.Name = "选中"; column.HeaderText = "选中"; column.ReadOnly = false; dataGridView.Columns.Add(column); dataGridView.Columns.Add("员工姓名", "员工姓名"); dataGridView.Columns.Add("员工编号", "员工编号"); dataGridView.Columns.Add("部门", "部门"); foreach (DataGridViewColumn item in dataGridView.Columns) { if (item.Name != "选中") { item.ReadOnly = true; item.Width = item.HeaderText.Length * (int)this.Font.Size + 100; } else { item.Width = 68; item.ReadOnly = false; item.Frozen = false; } } bool selectedFlag = false; int count = 0; foreach (var item in AllUser) { selectedFlag = false; if (SelectedUser != null && count < SelectedUser.Count) { if (SelectedUser.FindIndex(c => c.员工编号 == item.员工编号) >= 0) { selectedFlag = true; count++; } } dataGridView.Rows.Add(new object[] { selectedFlag, item.员工姓名, item.员工编号, item.部门 }); } } if (m_type == "部门") { if (AllDept == null) { if (!m_deptServer.GetAllDeptInfo(out m_findDepartment, out error)) { MessageDialog.ShowErrorMessage(error); return; } AllDept = m_findDepartment.ToList(); } DataGridViewCheckBoxColumn column = new DataGridViewCheckBoxColumn(); column.Visible = true; column.Name = "选中"; column.HeaderText = "选中"; column.ReadOnly = false; dataGridView.Columns.Add(column); dataGridView.Columns.Add("部门代码", "部门代码"); dataGridView.Columns.Add("部门名称", "部门名称"); dataGridView.Columns.Add("部门类型", "部门类型"); foreach (DataGridViewColumn item in dataGridView.Columns) { if (item.Name != "选中") { item.ReadOnly = true; item.Width = item.HeaderText.Length * (int)this.Font.Size + 100; } else { item.Width = 68; item.ReadOnly = false; item.Frozen = false; } } bool selectedFlag = false; int count = 0; foreach (var item in AllDept) { selectedFlag = false; if (SelectedDept != null && count < SelectedDept.Count) { if (SelectedDept.FindIndex(c => c.部门代码 == item.部门代码) >= 0) { selectedFlag = true; count++; } } dataGridView.Rows.Add(new object[] { selectedFlag, item.部门代码, item.部门名称, item.部门类型 }); } } userControlDataLocalizer1.Init(dataGridView, this.Name, UniversalFunction.SelectHideFields(this.Name, dataGridView.Name, BasicInfo.LoginID)); lblSumCount.Text = dataGridView.Rows.Count.ToString(); } catch (Exception err) { MessageDialog.ShowErrorMessage(err.Message); } }