Je me sens comme si je manquais simplement une propriété simple, mais pouvez-vous régler le curseur vers la fin d'une ligne dans une zone de texte? Après tester "." En premier caractère, le curseur va avant que le texte ajouté. Donc, au lieu de "0,123", les résultats sont "1230." sans déplacer le curseur moi-même. P> Je m'excuse également s'il s'agit d'une question en double. p> p>
5 Réponses :
Réglage de la propriété SelectionStart code> de la zone de texte contrôlera la position du curseur. P>
En supposant que vous utilisiez WinForms et non WPF ...
void SetToEndOfLine(TextBox tb, int line) { int loc = 0; for (int x = 0; x < tb.Lines.Length && tb <= line; x++) { loc += tb.Lines[x].Length; } tb.SelectionStart = loc; }
t.SelectionStart = t.Text.Length;
dans WPF, vous devez utiliser: où 0 est le nombre de caractères sélectionné p> p> p>
Ceci sera utile.
private void textBox_TextChanged(object sender, EventArgs e) { string c = ""; string d = "0123456789."; foreach (char a in textBox.Text) { if (d.Contains(a)) c += a; } textBox.Text = c; textBox.SelectionStart = textBox.Text.Length; }