Exemplo n.º 1
0
        private void SetGroupNotifications(DockPanel panel)
        {
            this.Dispatcher.Invoke(() =>
            {
                if (panel.Tag != null)
                {
                    List <ListItemNotification> notifications = mListViewHelper.GetItemGroupNotificationsList(panel.Tag.ToString());
                    if (notifications != null && notifications.Count > 0)
                    {
                        panel.Visibility = Visibility.Visible;
                        foreach (ListItemNotification notification in notifications)
                        {
                            ImageMakerControl itemInd = new ImageMakerControl();
                            itemInd.SetValue(AutomationProperties.AutomationIdProperty, notification.AutomationID);
                            itemInd.ImageType = notification.ImageType;
                            itemInd.ToolTip   = notification.ToolTip;
                            itemInd.Margin    = new Thickness(3, 0, 3, 0);
                            itemInd.Height    = 16;
                            itemInd.Width     = 16;
                            itemInd.SetAsFontImageWithSize = notification.ImageSize;

                            if (notification.ImageForeground == null)
                            {
                                itemInd.ImageForeground = System.Windows.Media.Brushes.LightPink;
                            }
                            else
                            {
                                itemInd.ImageForeground = notification.ImageForeground;
                            }

                            if (notification.BindingConverter == null)
                            {
                                BindingHandler.ObjFieldBinding(itemInd, ImageMakerControl.VisibilityProperty, notification.BindingObject, notification.BindingFieldName, BindingMode.OneWay);
                            }
                            else
                            {
                                BindingHandler.ObjFieldBinding(itemInd, ImageMakerControl.VisibilityProperty, notification.BindingObject, notification.BindingFieldName, bindingConvertor: notification.BindingConverter, BindingMode.OneWay);
                            }

                            panel.Children.Add(itemInd);
                        }
                    }
                    else
                    {
                        panel.Visibility = Visibility.Collapsed;
                    }
                }
            });
        }
Exemplo n.º 2
0
        private void SetItemNotifications()
        {
            this.Dispatcher.Invoke(() =>
            {
                List <ListItemNotification> notifications = ListHelper.GetItemNotificationsList(Item);
                if (notifications != null)
                {
                    foreach (ListItemNotification notification in notifications)
                    {
                        ImageMakerControl itemInd = new ImageMakerControl();
                        itemInd.SetValue(AutomationProperties.AutomationIdProperty, notification.AutomationID);
                        itemInd.ImageType = notification.ImageType;
                        itemInd.ToolTip   = notification.ToolTip;
                        itemInd.Margin    = new Thickness(3, 0, 3, 0);
                        itemInd.Height    = 16;
                        itemInd.Width     = 16;
                        itemInd.SetAsFontImageWithSize = notification.ImageSize;

                        if (notification.ImageForeground == null)
                        {
                            itemInd.ImageForeground = System.Windows.Media.Brushes.LightPink;
                        }
                        else
                        {
                            itemInd.ImageForeground = notification.ImageForeground;
                        }

                        if (notification.BindingConverter == null)
                        {
                            BindingHandler.ObjFieldBinding(itemInd, ImageMakerControl.VisibilityProperty, notification.BindingObject, notification.BindingFieldName, BindingMode.OneWay);
                        }
                        else
                        {
                            BindingHandler.ObjFieldBinding(itemInd, ImageMakerControl.VisibilityProperty, notification.BindingObject, notification.BindingFieldName, bindingConvertor: notification.BindingConverter, BindingMode.OneWay);
                        }

                        xItemNotificationsPnl.Children.Add(itemInd);
                        xItemNotificationsClm.Width = new GridLength(xItemNotificationsClm.Width.Value + itemInd.Width + 10);
                    }
                }
            });
        }