public ThingsListItemControl(OWLOSThingWrapper ThingWrapper) { InitializeComponent(); this.ThingWrapper = ThingWrapper; NameTextBox.Text = ThingWrapper.Thing.Name; foreach (OWLOSTransport ThingTransport in ThingWrapper.Thing.transports) { switch (ThingTransport.connection.connectionType) { case ConnectionType.RESTfulClient: RESTfulConfigItemControl = new ThingConnectionConfigItemControl(ThingWrapper.Thing, ThingTransport); ConnectionsStackPanel.Children.Add(RESTfulConfigItemControl); break; case ConnectionType.MQTT: MQTTConfigItemControl = new ThingConnectionConfigItemControl(ThingWrapper.Thing, ThingTransport); ConnectionsStackPanel.Children.Add(MQTTConfigItemControl); break; case ConnectionType.UART: UARTConfigItemControl = new ThingConnectionConfigItemControl(ThingWrapper.Thing, ThingTransport); ConnectionsStackPanel.Children.Add(UARTConfigItemControl); break; } } foreach (APIQueryInterval CurrentAPIQueryInterval in ThingWrapper.Thing.config.APIQueryIntervals) { QueryIntervalControl NewQueryIntervalControl = new QueryIntervalControl(CurrentAPIQueryInterval); QueryIntervalsStackPanel.Children.Add(NewQueryIntervalControl); } }
private void ThingsManager_OnNewThing(object sender, OWLOSThingWrapperEventArgs e) { OWLOSThingWrapper ThingWrapper = e.ThingWrapper; ThingsListItemControl NewThingsListItemControl = new ThingsListItemControl(ThingWrapper); NewThingsListItemControl.OnDelete += NewThingsListItemControl_OnDelete; ThingsListStackPanel.Children.Add(NewThingsListItemControl); }
private void ThingsManager_OnDeleteThingWrapper(object sender, System.EventArgs e) { OWLOSThingWrapper ThingWrapper = sender as OWLOSThingWrapper; foreach (TreeViewItem TreeItem in ThingsTreeViewItem.Items) { if ((TreeItem.Tag as ThingItemsHolder).PanelTag.Thing == ThingWrapper.Thing) { ThingsTreeViewItem.Items.Remove(TreeItem); break; } } }