private void flpColumns_DragDrop(object sender, DragEventArgs e) { DraggableTreeNode dtn = (DraggableTreeNode)e.Data.GetData(typeof(DraggableTreeNode)); Button btn = new Button() { AutoSize = true, Text = $"{dtn.PInfo.ReflectedType.Name}.{dtn.PInfo.Name}" }; btn.Click += new EventHandler(delegate { btn.Dispose(); }); flpColumns.Controls.Add(btn); }
private void tvColumns_DoubleClick(object sender, EventArgs e) { if (tvColumns.SelectedNode is DraggableTreeNode) { DraggableTreeNode dtn = (DraggableTreeNode)tvColumns.SelectedNode; Button btn = new Button() { AutoSize = true, Text = $"{dtn.PInfo.ReflectedType.Name}.{dtn.PInfo.Name}" }; btn.Click += new EventHandler(delegate { btn.Dispose(); }); flpColumns.Controls.Add(btn); } }
private void ReportTab_Load(object sender, EventArgs e) { TreeNode nodeRoot = new TreeNode() { Text = "Individual" }; tvColumns.Nodes.Add(nodeRoot); foreach (PropertyInfo item in new individual().GetType().GetProperties()) { TreeNode nodeChild = new DraggableTreeNode() { PInfo = item, Text = item.Name, Tag = item.PropertyType }; nodeRoot.Nodes.Add(nodeChild); } TreeNode nodeRoot2 = new TreeNode() { Text = "Organization" }; tvColumns.Nodes.Add(nodeRoot2); foreach (PropertyInfo item in new organization().GetType().GetProperties()) { TreeNode nodeChild = new DraggableTreeNode() { PInfo = item, Text = item.Name, Tag = item.PropertyType }; nodeRoot2.Nodes.Add(nodeChild); } }