Funktion löscht die markierten Zeichen in einer Textbox.
Man kann damit auch ein "Backspace" ausführen:
if (myTextBox != null){
int intAktLaenge = myTextBox.TextLength;
if (intAktLaenge > 0){
myTextBox.Select(intAktLaenge - 1, 1);
CutSelectedCharsInTextBox(myTextBox);
}
}
private void CutSelectedCharsInTextBox(TextBox objTextBox)
{
String strSelected = objTextBox.SelectedText;
if (!String.IsNullOrEmpty(strSelected))
{
//mindestens 1 Zeichen markiert
StringBuilder strAlterWertMod = new StringBuilder();
//Start und Länge der Markierung ermitteln
int intSelStart = objTextBox.SelectionStart;
int intSelLaenge = objTextBox.SelectionLength;
//alten Wert holen
String strAlterWertOri = objTextBox.Text;
//linker und rechter Teil des unkarkierten Teils ermitteln
String strLinks = strAlterWertOri.Substring(0, intSelStart);
String strRechts = strAlterWertOri.Substring(intSelStart + intSelLaenge);
//neuer Text aufbauen
strAlterWertMod.Append(strLinks);
strAlterWertMod.Append(strRechts);
objTextBox.Text = strAlterWertMod.ToString();
}
else
{
//nichts markiert
}
}
1 Kommentare zum Snippet