Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

TextBoxBase.SelectionStart, propriété

Obtient ou définit le point de départ du texte sélectionné dans la zone de texte.

Espace de noms :  System.Windows.Forms
Assembly :  System.Windows.Forms (dans System.Windows.Forms.dll)

[BrowsableAttribute(false)]
public int SelectionStart { get; set; }

Valeur de propriété

Type : System.Int32
Position de départ du texte sélectionné dans la zone de texte.

ExceptionCondition
ArgumentOutOfRangeException

La valeur assignée est inférieure à zéro.

Si aucun texte n'est sélectionné dans le contrôle, cette propriété indique le point d'insertion, ou signe insertion, pour le nouveau texte. Si vous affectez à cette propriété un emplacement situé au-delà du texte du contrôle, la position de début de sélection est placée après le dernier caractère. Si du texte est sélectionné dans le contrôle zone de texte, la modification de cette propriété peut diminuer la valeur de la propriété SelectionLength. Si le texte résiduel dans le contrôle après la position indiquée par la propriété SelectionStart est inférieur à la valeur de la propriété SelectionLength, la valeur de la propriété SelectionLength est automatiquement diminuée. La valeur de la propriété SelectionStart ne provoque jamais une augmentation de la propriété SelectionLength.

Vous pouvez déplacer par programme la sélection au sein de la zone de texte en définissant les propriétés SelectionStart et SelectionLength.

Il est possible de déplacer par programme le signe insertion dans la zone de texte. Donnez à SelectionStart la position vers laquelle déplacer le signe insertion dans la zone de texte, puis donnez à la propriété SelectionLength la valeur 0 (zéro).

Le focus doit être sur la TextBox pour que la sélection ou le signe insertion puisse être déplacé. Vous pouvez définir la propriété SelectionStart d'une TextBox en ReadOnly en lui donnant le Focus en premier.

Exemple 1

L'exemple de code suivant utilise la classe dérivée TextBox. Il fournit des gestionnaires d'événements Click pour les objets MenuItem qui exécutent les opérations Couper, Copier, Coller et Annuler. Cet exemple nécessite qu'un contrôle TextBox nommé textBox1 ait été créé.


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) == true)
    {
        // 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 == true)
    {
       // Undo the last operation.
       textBox1.Undo();
       // Clear the undo buffer to prevent last action from being redone.
       textBox1.ClearUndo();
    }
 }
 


Exemple 2

L'exemple suivant définit la propriété SelectionStart d'une TextBox en ReadOnly en lui donnant le Focus en premier.


public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        this.button1.Click += new System.EventHandler(this.ButtonClickWork);
    }

    private void ButtonClickWork(object sender, EventArgs e)
    {
        this.textBox1.Text = "Hello world!";
        this.textBox1.ReadOnly = true;

        this.textBox1.Focus();
        this.textBox1.SelectionStart = this.textBox1.SelectionStart + 1;
        this.textBox1.SelectionLength = 1;
    }
}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft