Ejemplo n.º 1
0
        private void ListDevices()
        {
            double maxHeight = SP_Devices.MaxHeight - 58;

            GRD_Devices_List.Children.Clear();

            int column = 0;
            int line   = 0;

            double marginLeft;
            double marginTop = 0;

            foreach (var item in Devices.OrderByDescending(i => i.DeviceName))
            {
                if (column < NColumns)
                {
                    marginLeft = column * ItemWidth + column * DefaultMarginRight;

                    column++;
                }
                else
                {
                    column = 1;
                    line++;

                    marginLeft = 0;
                    marginTop  = line * ItemHeight + (line + 1) * DefaultMarginTop;
                }

                var device = new UC_Devices_Item()
                {
                    ItemWidth           = ItemWidth,
                    ItemHeight          = ItemHeight,
                    HorizontalAlignment = HorizontalAlignment.Left,
                    VerticalAlignment   = VerticalAlignment.Top,
                    Margin              = new Thickness(marginLeft, marginTop, DefaultMarginRight, 0),
                    DeviceID            = item.DeviceID,
                    DeviceName          = item.DeviceName,
                    Latitude            = item.Latitude.ToString(CultureInfo.InvariantCulture),
                    Longitude           = item.Longitude.ToString(CultureInfo.InvariantCulture),
                    DefaultProjectColor = DefaultProjectColor
                };

                device.Remove += RemovedDevice;

                device.BindData();

                GRD_Devices_List.Children.Insert(0, device);
            }

            SV_Devices.Height = Math.Min(maxHeight, (Devices.Count * ItemHeight + (Devices.Count + 1) * DefaultMarginTop) + 3);

            TB_NMessages.Text = Devices.Count.ToString(CultureInfo.InvariantCulture);
            TB_NDevices.Text  = Devices.Count.ToString(CultureInfo.InvariantCulture);

            BRD_Alert.Visibility  = Devices.Count > 0 ? Visibility.Visible : Visibility.Collapsed;
            BRD_Expand.Visibility = AllowToExpandDevices ? Visibility.Visible : Visibility.Collapsed;
        }
Ejemplo n.º 2
0
        private void RemovedDevice(object sender, RoutedEventArgs e)
        {
            UC_Devices_Item item = sender as UC_Devices_Item;

            RemovedDeviceID = item.DeviceID;

            RemoveDevice(RemovedDeviceID);

            if (DeviceRemoved != null)
            {
                DeviceRemoved?.Invoke(this, null);
            }
        }