Пример #1
0
        private void RibbonDropDownButton_ActiveItemList_PreviewMouseDown(object sender, MouseButtonEventArgs e)
        {
            try
            {
                StartLoadingUI();

                this.RibbonDropDownButton_ActiveItemList.Items.Clear();
                ActiveWindow aw = new ActiveWindow();
                foreach (InfoItem ii in aw.GetActiveItemList())
                {
                    MenuItem mi = new MenuItem();
                    if (ii.Title.Length > ACTIVEITEM_TITLE_LENGTH)
                    {
                        mi.Header = ii.Title.Substring(0, ACTIVEITEM_TITLE_LENGTH) + "...";
                    }
                    else
                    {
                        mi.Header = ii.Title;
                    }
                    switch (ii.Type)
                    {
                        case InfoItemType.Web:
                            mi.Icon = new Image
                            {
                                Source = new BitmapImage(new Uri(FileTypeHandler.GetIcon(ElementAssociationType.Web, ii.Uri), UriKind.Absolute))
                            };
                            break;
                        case InfoItemType.File:
                            mi.Icon = new Image
                            {
                                Source = new BitmapImage(new Uri(FileTypeHandler.GetIcon(ElementAssociationType.File, ii.Uri), UriKind.Absolute))
                            };
                            break;
                        case InfoItemType.Email:
                            mi.Icon = new Image
                            {
                                Source = new BitmapImage(new Uri(FileTypeHandler.GetIcon(ElementAssociationType.Email, ii.Uri), UriKind.Absolute))
                            };
                            break;
                    };
                    mi.Tag = ii;
                    mi.ToolTip = ii.Title;
                    mi.Click += new RoutedEventHandler(RibbonDropDownButton_ActiveItem_Click);
                    this.RibbonDropDownButton_ActiveItemList.Items.Add(mi);
                }

                if (this.RibbonDropDownButton_ActiveItemList.Items.Count == 0)
                {
                    MenuItem mi = new MenuItem();
                    mi.Header = "No active item found";
                    this.RibbonDropDownButton_ActiveItemList.Items.Add(mi);
                }

                EndLoadingUI();
            }
            catch (Exception ex)
            {
                this.RibbonDropDownButton_ActiveItemList.Items.Clear();
                //MessageBox.Show("RibbonDropDownButton_ActiveItemList_MouseEnter\n" + ex.Message);
            }
        }
Пример #2
0
        private void ElementTextBox_ContextMenuItem_Link_MouseEnter(object sender, MouseEventArgs e)
        {
            try
            {
                StartLoadingUI();

                MenuItem mi_link = sender as MenuItem;
                while (mi_link.Items.Count > 2)
                {
                    mi_link.Items.RemoveAt(0);
                }

                int index = 0;

                ActiveWindow aw = new ActiveWindow();
                foreach (InfoItem ii in aw.GetActiveItemList())
                {
                    MenuItem mi = new MenuItem();
                    if (ii.Title.Length > ACTIVEITEM_TITLE_LENGTH)
                    {
                        mi.Header = ii.Title.Substring(0, ACTIVEITEM_TITLE_LENGTH) + "...";
                    }
                    else
                    {
                        mi.Header = ii.Title;
                    }
                    switch (ii.Type)
                    {
                        case InfoItemType.Web:
                            mi.Icon = new Image
                            {
                                Source = new BitmapImage(new Uri(FileTypeHandler.GetIcon(ElementAssociationType.Web, ii.Uri), UriKind.Absolute)),
                                Width = 18,
                                Height = 18,
                            };
                            break;
                        case InfoItemType.File:
                            mi.Icon = new Image
                            {
                                Source = new BitmapImage(new Uri(FileTypeHandler.GetIcon(ElementAssociationType.File, ii.Uri), UriKind.Absolute)),
                                Width = 18,
                                Height = 18,
                            };
                            break;
                        case InfoItemType.Email:
                            mi.Icon = new Image
                            {
                                Source = new BitmapImage(new Uri(FileTypeHandler.GetIcon(ElementAssociationType.Email, ii.Uri), UriKind.Absolute)),
                                Width = 18,
                                Height = 18,
                            };
                            break;
                    };
                    mi.Tag = ii;
                    mi.ToolTip = ii.Title;
                    mi.Click += new RoutedEventHandler(ElementTextBox_ContextMenuItem_ActiveItem_Click);

                    mi_link.Items.Insert(index++, mi);
                }

                EndLoadingUI();
            }
            catch (Exception ex)
            {
                MenuItem mi_link = sender as MenuItem;
                while (mi_link.Items.Count > 2)
                {
                    mi_link.Items.RemoveAt(0);
                }

                //MessageBox.Show("ElementTextBox_ContextMenuItem_Link_MouseEnter\n" + ex.Message);
            }
        }