DataGridView.ClipboardCopyMode Propriété

Définition

Obtient ou définit une valeur qui indique si les utilisateurs peuvent copier des valeurs de texte de cellule dans le Clipboard, et si le texte d’en-tête de ligne et de colonne est inclus.

public:
 property System::Windows::Forms::DataGridViewClipboardCopyMode ClipboardCopyMode { System::Windows::Forms::DataGridViewClipboardCopyMode get(); void set(System::Windows::Forms::DataGridViewClipboardCopyMode value); };
[System.ComponentModel.Browsable(true)]
public System.Windows.Forms.DataGridViewClipboardCopyMode ClipboardCopyMode { get; set; }
[<System.ComponentModel.Browsable(true)>]
member this.ClipboardCopyMode : System.Windows.Forms.DataGridViewClipboardCopyMode with get, set
Public Property ClipboardCopyMode As DataGridViewClipboardCopyMode

Valeur de propriété

Une des valeurs de l'objet DataGridViewClipboardCopyMode. La valeur par défaut est EnableWithAutoHeaderText.

Attributs

Exceptions

La valeur spécifiée au moment de la définition de cette propriété n’est pas une valeur DataGridViewClipboardCopyMode valide.

Exemples

L’exemple de code suivant montre comment activer la copie dans le DataGridView contrôle . Cet exemple fait partie d’un exemple plus large disponible dans How to: Enable Users to Copy Multiple Cells to the Presseboard from the Windows Forms DataGridView Control.

private void Form1_Load(object sender, System.EventArgs e)
{
    // Initialize the DataGridView control.
    this.DataGridView1.ColumnCount = 5;
    this.DataGridView1.Rows.Add(new string[] { "A", "B", "C", "D", "E" });
    this.DataGridView1.Rows.Add(new string[] { "F", "G", "H", "I", "J" });
    this.DataGridView1.Rows.Add(new string[] { "K", "L", "M", "N", "O" });
    this.DataGridView1.Rows.Add(new string[] { "P", "Q", "R", "S", "T" });
    this.DataGridView1.Rows.Add(new string[] { "U", "V", "W", "X", "Y" });
    this.DataGridView1.AutoResizeColumns();
    this.DataGridView1.ClipboardCopyMode = 
        DataGridViewClipboardCopyMode.EnableWithoutHeaderText;
}

private void CopyPasteButton_Click(object sender, System.EventArgs e)
{
    if (this.DataGridView1
        .GetCellCount(DataGridViewElementStates.Selected) > 0)
    {
        try
        {
            // Add the selection to the clipboard.
            Clipboard.SetDataObject(
                this.DataGridView1.GetClipboardContent());
            
            // Replace the text box contents with the clipboard text.
            this.TextBox1.Text = Clipboard.GetText();
        }
        catch (System.Runtime.InteropServices.ExternalException)
        {
            this.TextBox1.Text = 
                "The Clipboard could not be accessed. Please try again.";
        }
    }
}
Private Sub Form1_Load(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles Me.Load

    ' Initialize the DataGridView control.
    Me.DataGridView1.ColumnCount = 5
    Me.DataGridView1.Rows.Add(New String() {"A", "B", "C", "D", "E"})
    Me.DataGridView1.Rows.Add(New String() {"F", "G", "H", "I", "J"})
    Me.DataGridView1.Rows.Add(New String() {"K", "L", "M", "N", "O"})
    Me.DataGridView1.Rows.Add(New String() {"P", "Q", "R", "S", "T"})
    Me.DataGridView1.Rows.Add(New String() {"U", "V", "W", "X", "Y"})
    Me.DataGridView1.AutoResizeColumns()
    Me.DataGridView1.ClipboardCopyMode = _
        DataGridViewClipboardCopyMode.EnableWithoutHeaderText

End Sub

Private Sub CopyPasteButton_Click(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles CopyPasteButton.Click

    If Me.DataGridView1.GetCellCount( _
        DataGridViewElementStates.Selected) > 0 Then

        Try

            ' Add the selection to the clipboard.
            Clipboard.SetDataObject( _
                Me.DataGridView1.GetClipboardContent())

            ' Replace the text box contents with the clipboard text.
            Me.TextBox1.Text = Clipboard.GetText()

        Catch ex As System.Runtime.InteropServices.ExternalException
            Me.TextBox1.Text = _
                "The Clipboard could not be accessed. Please try again."
        End Try

    End If

End Sub

Remarques

Le DataGridView contrôle copie la représentation textuelle de chaque cellule sélectionnée dans le Presse-papiers. Cette valeur est la valeur de cellule convertie en chaîne ou, pour les cellules d’image, la valeur de la Description propriété .

Les valeurs sont copiées dans le Presse-papiers aux Textformats , UnicodeText, Htmlet CommaSeparatedValue . Ces formats sont utiles pour coller du contenu dans des applications telles que le Bloc-notes, Microsoft Excel et Microsoft Word.

Le DataGridView contrôle copie les cellules contenues dans le plus petit rectangle qui inclut toutes les cellules sélectionnées. Les lignes et colonnes qui ne contiennent pas de cellules sélectionnées ne sont pas représentées dans les données copiées. Toutes les cellules non sélectionnées dans les lignes et colonnes restantes sont représentées par des espaces réservés vides. Selon le mode de copie et le mode de sélection, les valeurs d’en-tête des lignes et colonnes copiées peuvent également être copiées.

Lorsque des utilisateurs copient du contenu, le DataGridView contrôle ajoute un DataObject au Presse-papiers. Cet objet de données est récupéré à partir de la GetClipboardContent méthode . Vous pouvez appeler cette méthode lorsque vous souhaitez ajouter par programmation l’objet de données au Presse-papiers.

La GetClipboardContent méthode récupère des valeurs pour des cellules individuelles en appelant la DataGridViewCell.GetClipboardContent méthode . Vous pouvez remplacer l’une ou l’autre de ces méthodes dans des classes dérivées pour personnaliser la disposition des cellules copiées ou prendre en charge des formats de données supplémentaires.

Pour plus d’informations sur les opérations du Presse-papiers et les formats de données, consultez la Clipboard classe .

S’applique à

Voir aussi