void ExpandArea(TreeNode node, API.Area pArea) { Luminaire[] lums = PhilipsRestApi.GetLuminerLevels(pArea); foreach (Luminaire lum in lums) { TreeNode nd = new TreeNode(lum.luminaireID.ToString()); nd.Tag = lum; node.Nodes.Add(nd); } }
public void LoadTree() { try { Areas Areas = PhilipsRestApi.GetAreas(); foreach (API.Area area in Areas.Area_List) { TreeNode nd = new TreeNode(area.name); nd.Tag = area; this.treeView1.Nodes.Add(nd); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { //this.propertyGrid1.SelectedObject = e.Node.Tag; if (e.Node.Tag == null) { return; } if (e.Node.Tag is API.Area) { API.Area area = e.Node.Tag as API.Area; this.txtArea.Text = area.areaID.ToString(); this.txt_Luminaire.Text = ""; this.groupBox1.Visible = true; if (e.Node.Nodes.Count == 0) { ExpandArea(e.Node, e.Node.Tag as API.Area); } cmb_AreaOff.Items.Clear(); cmb_AreaOn.Items.Clear(); AreaLevel[] levels = PhilipsRestApi.GetAreaLevels(area.areaID); foreach (AreaLevel lvl in levels) { cmb_AreaOff.Items.Add(lvl); cmb_AreaOn.Items.Add(lvl); } } else if (e.Node.Tag is Luminaire) { this.groupBox1.Visible = false; Luminaire lum = e.Node.Tag as Luminaire; API.Area area = e.Node.Parent.Tag as API.Area; this.txtArea.Text = area.areaID.ToString(); this.txt_Luminaire.Text = lum.luminaireID.ToString(); } }