TextBoxBase.SelectionLength Özellik

Tanım

Metin kutusunda seçilen karakter sayısını alır veya ayarlar.

C#
[System.ComponentModel.Browsable(false)]
public virtual int SelectionLength { get; set; }

Özellik Değeri

Metin kutusunda seçilen karakter sayısı.

Öznitelikler

Özel durumlar

Atanan değer sıfırdan küçük.

Örnekler

Aşağıdaki kod örneği türetilmiş bir sınıfını kullanır TextBox. Kes, Kopyala, Yapıştır ve Geri Al işlemlerini gerçekleştiren nesneler için MenuItem olay işleyicileri sağlarClick. Bu örnek, adlı textBox1 bir TextBox denetimin oluşturulmasını gerektirir.

C#
private void Menu_Copy(System.Object sender, System.EventArgs e)
 {
    // Ensure that text is selected in the text box.   
    if(textBox1.SelectionLength > 0)
        // Copy the selected text to the Clipboard.
        textBox1.Copy();
 }
 
 private void Menu_Cut(System.Object sender, System.EventArgs e)
 {   
     // Ensure that text is currently selected in the text box.   
     if(textBox1.SelectedText != "")
        // Cut the selected text in the control and paste it into the Clipboard.
        textBox1.Cut();
 }
 
 private void Menu_Paste(System.Object sender, System.EventArgs e)
 {
    // Determine if there is any text in the Clipboard to paste into the text box.
    if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))
    {
        // Determine if any text is selected in the text box.
        if(textBox1.SelectionLength > 0)
        {
          // Ask user if they want to paste over currently selected text.
          if(MessageBox.Show("Do you want to paste over current selection?", "Cut Example", MessageBoxButtons.YesNo) == DialogResult.No)
             // Move selection to the point after the current selection and paste.
             textBox1.SelectionStart = textBox1.SelectionStart + textBox1.SelectionLength;
        }
        // Paste current text in Clipboard into text box.
        textBox1.Paste();
    }
 }

 private void Menu_Undo(System.Object sender, System.EventArgs e)
 {
    // Determine if last operation can be undone in text box.   
    if (textBox1.CanUndo)
    {
       // Undo the last operation.
       textBox1.Undo();
       // Clear the undo buffer to prevent last action from being redone.
       textBox1.ClearUndo();
    }
 }

Açıklamalar

Seçili metin üzerinde işlem yapmadan önce metin kutusu denetiminde şu anda seçili karakter olup olmadığını belirlemek için bu özelliği kullanabilirsiniz. Özelliğin değeri, denetimin SelectionLength metnindeki karakter sayısından daha büyük bir değere ayarlandığında, özelliğin değeri denetimin içindeki metin uzunluğunun SelectionLength tamamı ile özelliğin SelectionStart değeri (özellik için SelectionStart herhangi bir değer belirtildiyse) ayarlanır.

Not

giriş işaretini metin kutusunun içinde şapka işaretinin taşınmasını istediğiniz konuma ayarlayarak SelectionStart ve özelliği sıfır (0) değerine ayarlayarak SelectionLength , giriş işaretini program aracılığıyla taşıyabilirsiniz. Şapka işaretinin taşınması için metin kutusunun odağı olmalıdır.

Şunlara uygulanır

Ürün Sürümler
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Ayrıca bkz.