Пример #1
0
 private void CancelSelectAllItems()
 {
     for (int i = 0; i < this.Items.Count; i++)
     {
         if (this.Items[i] is ListMenuItem)
         {
             ListMenuItem menuItem = this.Items[i] as ListMenuItem;
             menuItem.IsSelected = false;
         }
     }
 }
Пример #2
0
        private void MenuItem_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
        {
            this.CancelSelectAllItems();
            ListMenuItem menuItem = sender as ListMenuItem;

            menuItem.IsSelected = true;
            if (this.OnKeySelected != null)
            {
                this.OnKeySelected(this, menuItem.Text, menuItem.Key);
            }
            e.Handled = true;
        }
Пример #3
0
        protected override void OnItemsChanged(NotifyCollectionChangedEventArgs e)
        {
            base.OnItemsChanged(e);

            for (int i = 0; i < this.Items.Count; i++)
            {
                if (this.Items[i] is ListMenuItem)
                {
                    ListMenuItem menuItem = this.Items[i] as ListMenuItem;
                    menuItem.MouseLeftButtonUp -= MenuItem_MouseLeftButtonUp;
                    menuItem.MouseLeftButtonUp += MenuItem_MouseLeftButtonUp;
                }
                else
                {
                    UIElement itemContent = this.Items[i] as UIElement;
                    if (itemContent != null)
                    {
                        itemContent.MouseLeftButtonUp -= ItemContent_MouseLeftButtonUp;
                        itemContent.MouseLeftButtonUp += ItemContent_MouseLeftButtonUp;
                    }
                }
            }
        }