示例#1
0
        private void CheckedNode(TreeNode treeNode, DataTable tb)
        {
            if (!treeNode.Checked)
            {
                List <DataRow> removeList = new List <DataRow>();
                foreach (DataRow dr in tb.Rows)
                {
                    if (dr[0].ToString() == treeNode.Text)
                    {
                        removeList.Add(dr);
                    }
                }

                foreach (DataRow dr in removeList)
                {
                    tb.Rows.Remove(dr);
                }
                LayerModel mm = new LayerModel();
                foreach (LayerModel item in model.allLines)
                {
                    if (item.Name == treeNode.Text)
                    {
                        mm = item;
                    }
                }
                model.allLines.Remove(mm);
                model.selectedLayerList.Remove(treeNode.Text);
            }
            else
            {
                ModelBaseMethod <ModelBase> modelMe = new ModelBaseMethod <ModelBase>();
                LayerModel lyModel = modelMe.GetAllLayerGemo(model, treeNode.Text);

                if (!model.selectedLayerList.Contains(treeNode.Text))
                {
                    model.selectedLayerList.Add(treeNode.Text);
                }


                GetLineDataRowInfo(lyModel.pointFs, tb, treeNode.Text);
                if (this.model.allLines == null)
                {
                    this.model.allLines = new List <LayerModel>();
                }
                this.model.allLines.Add(lyModel);
            }
            this.dataGridView1.DataSource = tb;
        }