/// <summary> /// 设置“方法”是否被勾选 /// </summary> /// <param name="bw"></param> private void ResetWaySetting(JExamBodypartSetting bw) { _isLoadWays = true; try { if (bw == null) { return; } foreach (JExamBodypartWaySetting way in bw.默认方法) { ListViewItem[] lvis = lstWays.Items.Find(way.方法名称, true); foreach (ListViewItem lvi in lvis) { lvi.Checked = true; foreach (string attach in way.附加方法) { int index = FindSubItemByText(lvi.SubItems, "□" + attach); if (index >= 0) { lvi.SubItems[index].Text = "√" + attach; } } } } } finally { _isLoadWays = false; } }
private void lstBodyPart_SelectedIndexChanged(object sender, EventArgs e) { try { //初始化方法列表 lstWays.Clear(); lstWays.Enabled = false; if (lstBodyPart.SelectedItems.Count <= 0) { return; } ExamItemData itemData = trvItems.SelectedNode.Tag as ExamItemData; BodypartInfoData bodypartData = lstBodyPart.SelectedItems[0].Tag as BodypartInfoData; if (bodypartData == null) { return; } //绑定方法数据 BindBodypartWay(bodypartData); lstWays.Enabled = lstBodyPart.SelectedItems[0].Checked; //勾选默认方法 JExamBodypartSetting bodypartSetting = null; if (itemData.项目信息.可选部位.Count > 0) { int index = (itemData.项目信息.可选部位 as List <JExamBodypartSetting>).FindIndex(T => T.部位ID == bodypartData.部位ID); if (index >= 0) { bodypartSetting = itemData.项目信息.可选部位[index]; } } ResetWaySetting(bodypartSetting); showBodyPartWays(); } catch (Exception ex) { MsgBox.ShowException(ex, this); } }