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.Gets or sets a value that indicates whether users can copy cell text values to the Clipboard and whether row and column header text is included.

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; }
member this.ClipboardCopyMode : System.Windows.Forms.DataGridViewClipboardCopyMode with get, set
Public Property ClipboardCopyMode As DataGridViewClipboardCopyMode

Valeur de propriété

Attributs

Exceptions

La valeur spécifiée lors de la définition de cette propriété n’est pas une valeur DataGridViewClipboardCopyMode valide.The specified value when setting this property is not a valid DataGridViewClipboardCopyMode value.

Exemples

L’exemple de code suivant montre comment activer la copie dans le contrôle DataGridView.The following code example demonstrates how to enable copying in the DataGridView control. Cet exemple fait partie d’un exemple plus complet disponible dans Comment : permettre aux utilisateurs de copier plusieurs cellules dans le presse-papiers à partir du contrôle DataGridView Windows Forms.This example is part of a larger example available in How to: Enable Users to Copy Multiple Cells to the Clipboard 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 contrôle DataGridView copie la représentation textuelle de chaque cellule sélectionnée dans le presse-papiers.The DataGridView control copies the text representation of each selected cell to the Clipboard. Cette valeur est la valeur de cellule convertie en chaîne ou, pour les cellules d’image, la valeur de la propriété Description.This value is the cell value converted to a string or, for image cells, the value of the Description property.

Les valeurs sont copiées dans le presse-papiers au format Text, UnicodeText, Htmlet CommaSeparatedValue.Values are copied to the Clipboard in Text, UnicodeText, Html, and CommaSeparatedValue formats. Ces formats sont utiles pour coller du contenu dans des applications telles que le bloc-notes, Microsoft Excel et Microsoft WordMicrosoft Word.These formats are useful for pasting content into applications such as Notepad, Microsoft Excel, and Microsoft WordMicrosoft Word.

Le contrôle DataGridView copie les cellules contenues dans le plus petit rectangle qui comprend toutes les cellules sélectionnées.The DataGridView control copies the cells contained in the smallest rectangle that includes all selected cells. Les lignes et les colonnes qui ne contiennent pas de cellules sélectionnées ne sont pas représentées dans les données copiées.Rows and columns that do not contain any selected cells are not represented in the copied data. Toutes les cellules non sélectionnées dans les lignes et les colonnes restantes sont représentées par des espaces réservés vides.Any unselected cells in the remaining rows and columns are represented by blank placeholders. En fonction du mode de copie et du mode de sélection, les valeurs d’en-tête pour les lignes et les colonnes copiées peuvent également être copiées.Depending on the copy mode and the selection mode, header values for the copied rows and columns may be copied, as well.

Quand les utilisateurs copient du contenu, le contrôle DataGridView ajoute un DataObject au Presse-papiers.When users copy content, the DataGridView control adds a DataObject to the Clipboard. Cet objet de données est récupéré à partir de la méthode GetClipboardContent.This data object is retrieved from the GetClipboardContent method. Vous pouvez appeler cette méthode lorsque vous souhaitez ajouter par programmation l’objet de données au Presse-papiers.You can call this method when you want to programmatically add the data object to the Clipboard.

La méthode GetClipboardContent récupère les valeurs des cellules individuelles en appelant la méthode DataGridViewCell.GetClipboardContent.The GetClipboardContent method retrieves values for individual cells by calling the DataGridViewCell.GetClipboardContent method. Vous pouvez substituer l’une ou l’autre de ces méthodes dans les classes dérivées pour personnaliser la disposition des cellules copiées ou pour prendre en charge des formats de données supplémentaires.You can override either or both of these methods in derived classes to customize the layout of copied cells or to support additional data formats.

Pour plus d’informations sur les opérations du presse-papiers et les formats de données, consultez la classe Clipboard.For more information about Clipboard operations and data formats, see the Clipboard class.

S’applique à

Voir aussi