/// <summary> /// 绑定角色数据 /// </summary> private void BindRoleData() { lstRoles.Items.Clear(); DataTable dtRol = _rwm.GetRoleInfo(cbxDepartment.SelectedValue.ToString()); foreach (DataRow dr in dtRol.Rows) { RoleInfoData rid = new RoleInfoData(); rid.BindRowData(dr); ListViewItem lvi = lstRoles.Items.Add(rid.角色名称); lvi.Tag = rid.角色ID; lvi.ImageIndex = 0; } }
private void BindRoleData() { //点击刷新,重复加载list列表情况,先清空数据,列名 listView1.Items.Clear(); listView1.Columns.Clear(); DataTable dtBodypart = _rm.GetRoleInfo(cbxDepartment.SelectedValue.ToString()); foreach (DataColumn dc in dtBodypart.Columns) { if (("角色名称").IndexOf(dc.Caption) >= 0) { ColumnHeader columnHeader = new ColumnHeader(); columnHeader.Text = dc.Caption; columnHeader.Name = dc.Caption; columnHeader.Width = 200; listView1.Columns.Add(columnHeader); } //分组标记列宽度设为0,隐藏 if (("分组标记").IndexOf(dc.Caption) >= 0) { ColumnHeader columnHeader = new ColumnHeader(); columnHeader.Text = dc.Caption; columnHeader.Name = dc.Caption; columnHeader.Width = 0; listView1.Columns.Add(columnHeader); } } DataTable dtGroup = _rm.GetRoleGroups(cbxDepartment.SelectedValue.ToString()); foreach (DataRow dr in dtGroup.Rows) { string groupTag = dr["分组标记"].ToString(); string groupName = (string.IsNullOrEmpty(groupTag)) ? "未分组" : groupTag; ListViewGroup lvg = new ListViewGroup(groupName); listView1.Groups.Add(lvg); if (cbxRoleGroup.Items.IndexOf(groupTag) < 0) { cbxRoleGroup.Items.Add(groupTag); } } foreach (DataRow drItem in dtBodypart.Rows) { RoleInfoData roleData = new RoleInfoData(); roleData.BindRowData(drItem); string gn = (string.IsNullOrEmpty(roleData.分组标记)) ? "未分组" : roleData.分组标记; ListViewGroup lvgCur = GetCurGroup(gn); ListViewItem itemNew = new ListViewItem(new string[] { roleData.角色名称, gn }, 0, lvgCur); //添加Name属性赋值,否则listView1.Items.Find无法查找 itemNew.Name = roleData.角色ID; itemNew.Tag = roleData; listView1.Items.Add(itemNew); } listView1.View = View.Details; }