private void SearchTextBoxControl_PreviewKeyDown(object sender, KeyEventArgs e) { SearchTextBoxControl.LostFocus -= SearchTextBoxControl_LostFocus; if (e.Key == Key.Down && ItemList.Items.Count > 0 && !(e.OriginalSource is ListBoxItem)) { ItemList.Focus(); ItemList.SelectedIndex = 0; ((ListBoxItem)ItemList.ItemContainerGenerator.ContainerFromIndex(ItemList.SelectedIndex)).Focus(); e.Handled = true; } else if (e.Key == Key.Up && ItemList.SelectedIndex == 0) { SearchTextBoxControl.Focus(); ItemList.UnselectAll(); } else if (e.Key == Key.Down && ItemList.Items.Count > 0) { ItemList.SelectedIndex += 1; ((ListBoxItem)ItemList.ItemContainerGenerator.ContainerFromIndex(ItemList.SelectedIndex)).Focus(); e.Handled = true; } else if (e.Key == Key.Up && ItemList.Items.Count > 0 && ItemList.SelectedItem != null) { ItemList.SelectedIndex -= 1; ((ListBoxItem)ItemList.ItemContainerGenerator.ContainerFromIndex(ItemList.SelectedIndex)).Focus(); e.Handled = true; } SearchTextBoxControl.LostFocus += SearchTextBoxControl_LostFocus; }
private void ItemList_KeyDown(object sender, KeyEventArgs e) { switch (e.Key) { case Key.Enter: if (e.OriginalSource is ListBoxItem) { e.Handled = true; Popup.IsOpen = false; if (QueryResult != null && ItemList.SelectedItem != null) { QueryResult.Execute(ItemList.SelectedItem); args = new RoutedEventArgs(QueryResultSelectedEvent); RaiseEvent(args); SearchTextBoxControl.Clear(); } } break; case Key.Up: case Key.Down: break; default: e.Handled = true; break; } }
private void CityPopupControlButton_LostFocus(object sender, RoutedEventArgs e) { if (Popup != null && !IsMouseOver) { Popup.IsOpen = false; SearchTextBoxControl.Clear(); } }
private void OnSearchClick(object sender, RoutedEventArgs e) { e.Handled = true; if (Command != null && Command.CanExecute(CommandParameter)) { Command.Execute(CommandParameter); } args = new RoutedEventArgs(SearchClickEvent); RaiseEvent(args); SearchTextBoxControl.Clear(); }
private void CityPopupControlButton_PreviewMouseDown(object sender, MouseButtonEventArgs e) { if (((FrameworkElement)Popup.FindName("BackGrid")).IsMouseOver || (ItemList.IsMouseOver && ItemList.SelectedItem != null)) { Popup.IsOpen = false; SearchTextBoxControl.Clear(); } else if (Popup != null && Popup.IsOpen && !(SearchTextBoxControl.IsMouseOver || ItemList.IsMouseOver)) { ; e.Handled = true; } }
private void ItemList_PreviewMouseDown(object sender, MouseButtonEventArgs e) { if (e.LeftButton == MouseButtonState.Pressed && ItemList.SelectedItem != null && ((ListBoxItem)ItemList.ItemContainerGenerator.ContainerFromIndex(ItemList.SelectedIndex)).IsMouseOver) { Popup.IsOpen = false; e.Handled = true; if (QueryResult != null) { QueryResult.Execute(ItemList.SelectedItem); args = new RoutedEventArgs(QueryResultSelectedEvent); RaiseEvent(args); SearchTextBoxControl.Clear(); } } }
private void PreviewEscapeTabKeyDown(KeyEventArgs e) { Popup.IsOpen = false; SearchTextBoxControl.Clear(); if (e.Key == Key.Tab) { Frame parent = GlobalUtils.FindVisualParent <Frame>(this); Selector child = GlobalUtils.FindVisualChildren <Selector>(parent).FirstOrDefault(); if (child != null) { parent.Focusable = true; child.Focus(); parent.Focusable = false; } } }
private void ClearButtonControl_Click(object sender, RoutedEventArgs e) { SearchTextBoxControl.Clear(); }
internal MarkersManagerGump() : base(0, 0) { X = 50; Y = 50; CanMove = true; AcceptMouseInput = true; var button_width = 50; if (_markerFiles.Count > 0) { _markers = _markerFiles[0].Markers; button_width = WIDTH / _markerFiles.Count; } Add ( new AlphaBlendControl(0.05f) { X = 1, Y = 1, Width = WIDTH, Height = HEIGHT, Hue = 999, AcceptMouseInput = true, CanCloseWithRightClick = true, CanMove = true, } ); #region Boarder Add ( new Line ( 0, 0, WIDTH, 1, Color.Gray.PackedValue ) ); Add ( new Line ( 0, 0, 1, HEIGHT, Color.Gray.PackedValue ) ); Add ( new Line ( 0, HEIGHT, WIDTH, 1, Color.Gray.PackedValue ) ); Add ( new Line ( WIDTH, 0, 1, HEIGHT, Color.Gray.PackedValue ) ); #endregion var initY = 10; #region Legend Add(new Label(ResGumps.MarkerIcon, true, HUE_FONT, 185, 255, FontStyle.BlackBorder) { X = 5, Y = initY }); Add(new Label(ResGumps.MarkerName, true, HUE_FONT, 185, 255, FontStyle.BlackBorder) { X = 50, Y = initY }); Add(new Label(ResGumps.MarkerX, true, HUE_FONT, 35, 255, FontStyle.BlackBorder) { X = 315, Y = initY }); Add(new Label(ResGumps.MarkerY, true, HUE_FONT, 35, 255, FontStyle.BlackBorder) { X = 380, Y = initY }); Add(new Label(ResGumps.MarkerColor, true, HUE_FONT, 35, 255, FontStyle.BlackBorder) { X = 420, Y = initY }); Add(new Label(ResGumps.Edit, true, HUE_FONT, 35, 255, FontStyle.BlackBorder) { X = 475, Y = initY }); Add(new Label(ResGumps.Remove, true, HUE_FONT, 40, 255, FontStyle.BlackBorder) { X = 505, Y = initY }); Add(new Label(ResGumps.MarkerGoTo, true, HUE_FONT, 40, 255, FontStyle.BlackBorder) { X = 550, Y = initY }); #endregion Add ( new Line ( 0, initY + 20, WIDTH, 1, Color.Gray.PackedValue ) ); // Search Field Add(_searchTextBox = new SearchTextBoxControl(WIDTH / 2 - 150, 40)); DrawArea(_markerFiles[_categoryId].IsEditable); var initX = 0; foreach (var file in _markerFiles) { var b = new NiceButton( button_width * initX, HEIGHT - 40, button_width, 40, ButtonAction.Activate, file.Name, MARKERS_CATEGORY_GROUP_INDEX ) { ButtonParameter = initX, IsSelectable = true, }; b.SetTooltip(file.Name); if (initX == 0) { b.IsSelected = true; } Add(b); Add ( new Line ( b.X, b.Y, 1, b.Height, Color.Gray.PackedValue ) ); initX++; } Add ( new Line ( 0, HEIGHT - 40, WIDTH, 1, Color.Gray.PackedValue ) ); SetInScreen(); }