private static void PreProcessKeyboardInput(object sender, PreProcessInputEventArgs e) { if (e.Input.Device == Keyboard.PrimaryDevice) { KeyEventArgs keyEventArgs = e.Input as KeyEventArgs; if (keyEventArgs != null) { string text = keyEventArgs.KeyboardDevice.KeyToString(keyEventArgs.Key); if (text != string.Empty && !char.IsControl(text[0])) { TextComposition composition = new TextComposition( InputManager.Current, keyEventArgs.Device.Target, text); TextCompositionEventArgs ev = new TextCompositionEventArgs( keyEventArgs.Device, composition); ev.RoutedEvent = TextInputEvent; InputManager.Current.ProcessInput(ev); } } } }
internal abstract void ValidateInput(object sender, TextCompositionEventArgs e);
private void UIElement_OnTextInput(object sender, TextCompositionEventArgs e) { throw new NotImplementedException(); }
private void Port_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = !OnlyNumbersAllowed(e.Text); }
private void PreviewPortInput(object sender, TextCompositionEventArgs e) { e.Handled = !IsTextAllowed(e.Text); }
private void SayiKontrol(object sender, TextCompositionEventArgs e) { var regex = new Regex("[^0-9]+"); e.Handled = regex.IsMatch(e.Text); }
private void NumberValidationTextBox(object sender, TextCompositionEventArgs e) { Regex regex = new Regex("[^0-9]+"); e.Handled = regex.IsMatch(e.Text); }
private void TextBoxPageSize_OnPreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = IsTextNumeric(e.Text); }
private void txtUser_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = new Regex(@"[^\p{L}]+").IsMatch(e.Text); }
private void NumberValidation(object sender, TextCompositionEventArgs e) { e.Handled = REGEX.IsMatch(e.Text); }
private void txtRut_PreviewTextInput(object sender, TextCompositionEventArgs e) { }
private void SoloNumeros(TextCompositionEventArgs e) { }
private void tb_AssignmentPlannedDuration_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = !IsTextAllowed(e.Text); }
//only numbers private void PreviewNumberInputHandler(Object sender, TextCompositionEventArgs e) { e.Handled = !NumberAllowed(e.Text); }
//samo mala slova i brojevi private void PreviewTextInputHandlerVelika(Object sender, TextCompositionEventArgs e) { e.Handled = !TextAllowedVelikaSlova(e.Text); }
private void Limit_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = !(Char.IsNumber(e.Text, 0)); }
private void txtDeviceID_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = new Regex(@"[^0-9.]+").IsMatch(e.Text); }
private void txtCantidadRec_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = !IsTextAllowed(e.Text); }
private void edtSearchText_TextInput(object sender, TextCompositionEventArgs e) { SpareSearch(); }
/**<summary>限制端口输入内容</summary>**/ private void Port_PreviewTextInput(object sender, TextCompositionEventArgs e) { Regex regex = new Regex("[^0-9]+"); e.Handled = regex.IsMatch(e.Text); }
private void txtFoizga_PreviewTextInput(object sender, TextCompositionEventArgs e) { Regex regex = new Regex(@"^\d+$"); e.Handled = !regex.IsMatch((sender as TextBox).Text.Insert((sender as TextBox).SelectionStart, e.Text)); }
private void TxbPassportSerial_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = "0123456789".IndexOf(e.Text) < 0; }
private void TxtReferencia_PreviewTextInput(object sender, TextCompositionEventArgs e) { Globales.soloTNumeroTexto(sender, e); }
private void ServerAddress_PreviewTextInput(object sender, TextCompositionEventArgs e) //event handler to only allow input of IP format(numbers and dots) { e.Handled = !IsTextAllowed(e.Text); }
public void CodeEditor_TextArea_TextEntered(object sender, TextCompositionEventArgs e) { try { int start = CodeEditor.SelectionStart - 1; Saved = BraceCompleted = false; if (e.Text.Length != 0) { if (char.IsLetterOrDigit(e.Text[0])) { //判断是否在var和const声明区域 if (CodeEditor.Text.Length > 0) { int end = CodeEditor.TextArea.Caret.Offset, k; if (end >= CodeEditor.Text.Length) { end = CodeEditor.Text.Length - 1; } k = end; while (k > -1 && CodeEditor.Text[k] != ';') { --k; } if (k < 0) { k = 0; } string loc = CodeEditor.Text.Substring(k, end - k + 1); if (loc.Contains("const") || loc.Contains("var")) { completionWindow?.Close(); return; } } while (start > -1 && char.IsLetterOrDigit(CodeEditor.Text[start])) { --start; } if (start == -1 || !char.IsLetterOrDigit(CodeEditor.Text[start])) { ++start; } while (start < CodeEditor.Text.Length && char.IsDigit(CodeEditor.Text[start])) { ++start; } if (start > CodeEditor.SelectionStart) { return; } string str = CodeEditor.Text.Substring(start, CodeEditor.SelectionStart - start); StartIndex = start; Length = str.Length; if (completionWindow != null && !completionWindow.IsVisible) { completionWindow.Close(); } if (completionWindow == null) { completionWindow = new CompletionWindow(CodeEditor.TextArea); completionWindow.CloseAutomatically = false; completionWindow.Closed += delegate { completionWindow = null; }; } IList <ICompletionData> data = completionWindow.CompletionList.CompletionData; var symbol = codeCompletion.Symbols; CodeCompletion.Envirment host = null; foreach (var i in symbol) { if (Between(i.Start, i.End, CodeEditor.TextArea.Caret.Line)) { host = i; break; } } if (host == null) { host = codeCompletion.Global; } List <CompletionInfo> result = host?.Find(str[0]); if (result == null || result.Count == 0) { completionWindow?.Close(); return; } foreach (var i in result) { var tmp = new CompletionData(i); //tmp.SetStatus = (s) => { StatusContent.Invoke(() => { StatusContent.Text = s; }); }; bool find = false; foreach (var k in data) { if (k.Text == tmp.Text) { find = true; break; } } if (!find) { data.Add(tmp); } } completionWindow.CompletionList.SelectItem(str); try { completionWindow.Show(); } catch (Exception) { completionWindow.Close(); } } else { if (e.Text.Length == 1 && e.Text[0] == '(') { CodeEditor.Document.Insert(CodeEditor.SelectionStart, ")"); CodeEditor.SelectionStart--; BraceCompleted = e.Handled = true; } } } else { completionWindow?.Close(); } } catch (Exception) { StatusContent.Text = "代码提示模块错误......"; } bool Between(Compiler.Position start1, Compiler.Position end, int row) { if (ReferenceEquals(start1, null) || ReferenceEquals(end, null)) { return(false); } row--; return(row >= start1.Row && row <= end.Row); } }
/// <summary> /// Handles the TextEntered event of the TextArea control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.Windows.Input.TextCompositionEventArgs"/> instance containing the event data.</param> private void TextArea_TextEntered(object sender, TextCompositionEventArgs e) { ShowAutoComplete(autoOpening: true, text: e.Text); }
private void TextArea_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = RaiseEventPair(this, PreviewTextInputEvent, TextInputEvent, new TextCompositionEventArgs(e.Device, e.TextComposition)); }
private void TexPointPx_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = e.Text.CompareTo("0") >= 0 && e.Text.CompareTo("9") <= 0; }
private void TextBoxNumeroEvent(object sender, TextCompositionEventArgs e) { Regex regex = new Regex(ConstantsClients.RegexNumeros); e.Handled = regex.IsMatch(e.Text); }
private void OnlyPercentsTextBox_OnPreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = !int.TryParse(e.Text, out var num) && num >= 0 && num <= 100; }
private void txtOnlyNumber_PreviewTextInput(object sender, TextCompositionEventArgs e) { Regex _regex = new Regex("\\d"); //regex that matches disallowed text e.Handled = !_regex.IsMatch(e.Text); }