/// <summary> /// 更新分层列表 /// </summary> /// <param name="lv">需要显示的Level</param> public void ShowLevel(NLevel lv) { m_Level = lv; m_VisibleLayerList.Clear(); layerFitter.BeginUpdate(); layerFitter.Items.Clear(); for (int i = 0; i < lv.GetLayerCount(); ++i) { string text = lv.GetLayerName(i); int item = layerFitter.Items.Add(text); bool vis = lv.IsLayerVisible(text); layerFitter.SetItemChecked(item, vis); } layerFitter.EndUpdate(); UpdateActorList(lv); }
private void layerFitter_ItemCheck(object sender, ItemCheckEventArgs e) { if (m_Level == null || m_VisibleLayerList == null) { return; } string name = m_Level.GetLayerName(e.Index); if (e.NewValue == CheckState.Checked) { if (m_VisibleLayerList.IndexOf(name) == -1) { m_VisibleLayerList.Add(name); } } else { m_VisibleLayerList.Remove(name); } UpdateActorList(m_Level); }