C# textbox cursor-Positionierung
Ich das Gefühl, ich bin nur fehlt eine einfache Eigenschaft, aber Sie können setzen Sie den cursor an das Ende einer Zeile in einer textbox?
private void txtNumbersOnly_KeyPress(object sender, KeyPressEventArgs e)
{
if (Char.IsDigit(e.KeyChar) || e.KeyChar == '\b' || e.KeyChar == '.' || e.KeyChar == '-')
{
TextBox t = (TextBox)sender;
bool bHandled = false;
_sCurrentTemp += e.KeyChar;
if (_sCurrentTemp.Length > 0 && e.KeyChar == '-')
{
//'-' only allowed as first char
bHandled = true;
}
if (_sCurrentTemp.StartsWith(Convert.ToString('.')))
{
//add '0' in front of decimal point
t.Text = string.Empty;
t.Text = '0' + _sCurrentTemp;
_sCurrentTemp = t.Text;
bHandled = true;
}
e.Handled = bHandled;
}
Nach dem Test für '.' als ersten char, geht der cursor vor den text, der Hinzugefügt wird. Also statt "0.123", die Ergebnisse sind "1230." ohne sich zu bewegen den cursor selbst.
Auch ich entschuldige mich, wenn dies ist eine doppelte Frage.
Dies ist WPF, richtig?
InformationsquelleAutor Jim | 2010-05-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
InformationsquelleAutor Dean Kuga
in WPF, die Sie verwenden sollten :
wobei 0 die Anzahl der markierten Zeichen
InformationsquelleAutor Rui Marques
Einstellung der
SelectionStart
Eigenschaft für das Textfeld-Steuerelement die position des Cursors.InformationsquelleAutor Jacob G
Angenommen, Sie sind mit WinForms und nicht WPF...
InformationsquelleAutor Mark Synowiec
Wird dies nützlich.
InformationsquelleAutor özcan şahsuvar