private void lv_Rooms_Tapped(object sender, TappedRoutedEventArgs e) { SelectedRoom = (Shared.Classes.Room)lv_Rooms.SelectedItem; UpdateDeviceListView(); UpdateWindowShutterListView(); UpdateSensorListView(); }
private void btn_RoomAdd_Tapped(object sender, TappedRoutedEventArgs e) { Shared.Classes.Room NewRoom = new Shared.Classes.Room(); NewRoom.I2C_SlaveAdress = 0x40; NewRoom.Color = ""; NewRoom.Name = "New Room"; MainPage.MyHome.Rooms.Add(NewRoom); UpdateListBox(1); }
private void UpdateRoomDetailPane(Shared.Classes.Room SelectedRoom) { tbx_RoomName.Text = SelectedRoom.Name; tbx_I2CAdress.Text = "0x" + SelectedRoom.I2C_SlaveAdress.ToString("X"); }
private void UpdateDeviceDetailPane(Shared.Classes.Room SelectedRoom, bool SelectFirst = false, bool SkipClear = false) { if (SkipClear == false) { ClearDeviceDetailPane(); } if (SelectedRoom.Devices.Count > 0 || SelectedRoom.Sensors.Count > 0 || SelectedRoom.WindowShutters.Count > 0) { if (SkipClear == false) { try { foreach (var _Device in SelectedRoom.Devices) { lv_Devices.Items.Add(_Device); } } catch { } try { foreach (var _Sensor in SelectedRoom.Sensors) { lv_Devices.Items.Add(_Sensor); } } catch { } try { foreach (var _WindowShutter in SelectedRoom.WindowShutters) { lv_Devices.Items.Add(_WindowShutter); } } catch { } } if (SelectFirst) { lv_Devices.SelectedIndex = 0; } var type = lv_Devices.SelectedItem.GetType(); if (type == typeof(Shared.Classes.Device)) { Shared.Classes.Device SelectedDevice = (Shared.Classes.Device)lv_Devices.SelectedItem; try { deviceType_Device(); tbx_DeviceName.Text = SelectedDevice.Name; fv_DevicePin.SelectedItem = SelectedDevice.Pin.ToString(); } catch { tbx_DeviceName.Text = ""; fv_DevicePin.SelectedItem = "D0"; } } else if (type == typeof(Shared.Classes.WindowShutter)) { Shared.Classes.WindowShutter SelectedDevice = (Shared.Classes.WindowShutter)lv_Devices.SelectedItem; try { deviceType_WindowShutter(); tbx_DeviceName.Text = SelectedDevice.Name; fv_DevicePin.SelectedItem = SelectedDevice.Pin.ToString(); fv_DevicePinSec.SelectedItem = SelectedDevice.SecondaryPin.ToString(); } catch { tbx_DeviceName.Text = ""; fv_DevicePin.SelectedItem = "D0"; fv_DevicePinSec.SelectedItem = "D1"; } } else if (type == typeof(Shared.Classes.Sensor)) { Shared.Classes.Sensor SelectedDevice = (Shared.Classes.Sensor)lv_Devices.SelectedItem; try { deviceType_Sensor(); tbx_DeviceName.Text = SelectedDevice.Name; fv_DevicePin.SelectedItem = SelectedDevice.Pin.ToString(); } catch { tbx_DeviceName.Text = ""; fv_DevicePin.SelectedItem = "A2"; } } } }
private void btn_Save_Tapped(object sender, TappedRoutedEventArgs e) { if (lv_Rooms.Items.Count > 0 && lv_Rooms.SelectedIndex != -1) { // Update Room Detail Shared.Classes.Room SelectedRoom = (Shared.Classes.Room)lv_Rooms.SelectedItem; SelectedRoom.Name = tbx_RoomName.Text.ToString(); int NewAddress = 0; IFormatProvider _Culture = new CultureInfo("en-US"); int.TryParse(tbx_I2CAdress.Text.Replace("0x", ""), System.Globalization.NumberStyles.HexNumber, _Culture, out NewAddress); SelectedRoom.I2C_SlaveAdress = NewAddress; // Update Device Detail if (lv_Devices.Items.Count > 0) { if (lv_Devices.SelectedIndex != -1) { System.Type type = lv_Devices.SelectedItem.GetType(); if (type == typeof(Shared.Classes.Device)) { Shared.Classes.Device SelectedDevice = (Shared.Classes.Device)lv_Devices.SelectedItem; SelectedDevice.Name = tbx_DeviceName.Text.ToString(); try { SelectedDevice.Pin = (Shared.Classes.Device.PinsEnum)Enum.Parse(typeof(Shared.Classes.Device.PinsEnum), fv_DevicePin.SelectedItem.ToString()); } catch { SelectedDevice.Pin = (Shared.Classes.Device.PinsEnum)Enum.Parse(typeof(Shared.Classes.Device.PinsEnum), "D0"); } } else if (type == typeof(Shared.Classes.WindowShutter)) { Shared.Classes.WindowShutter SelectedDevice = (Shared.Classes.WindowShutter)lv_Devices.SelectedItem; SelectedDevice.Name = tbx_DeviceName.Text.ToString(); try { SelectedDevice.Pin = (Shared.Classes.Device.PinsEnum)Enum.Parse(typeof(Shared.Classes.Device.PinsEnum), fv_DevicePin.SelectedItem.ToString()); SelectedDevice.SecondaryPin = (Shared.Classes.Device.PinsEnum)Enum.Parse(typeof(Shared.Classes.Device.PinsEnum), fv_DevicePinSec.SelectedItem.ToString()); } catch { SelectedDevice.Pin = (Shared.Classes.Device.PinsEnum)Enum.Parse(typeof(Shared.Classes.Device.PinsEnum), "D0"); SelectedDevice.SecondaryPin = (Shared.Classes.Device.PinsEnum)Enum.Parse(typeof(Shared.Classes.Device.PinsEnum), "D1"); } } else if (type == typeof(Shared.Classes.Sensor)) { Shared.Classes.Sensor SelectedDevice = (Shared.Classes.Sensor)lv_Devices.SelectedItem; SelectedDevice.Name = tbx_DeviceName.Text.ToString(); try { SelectedDevice.Pin = (Shared.Classes.Device.PinsEnum)Enum.Parse(typeof(Shared.Classes.Device.PinsEnum), fv_DevicePin.SelectedItem.ToString()); } catch { SelectedDevice.Pin = (Shared.Classes.Device.PinsEnum)Enum.Parse(typeof(Shared.Classes.Device.PinsEnum), "A1"); } } } } } // Save Shared.Classes.Home.SaveHome(MainPage.MyHome); }