Bagikan melalui


DataGridView.GetClipboardContent Metode

Definisi

Mengambil nilai yang diformat yang mewakili isi sel terpilih untuk disalin ke Clipboard.

public:
 virtual System::Windows::Forms::DataObject ^ GetClipboardContent();
public virtual System.Windows.Forms.DataObject GetClipboardContent ();
public virtual System.Windows.Forms.DataObject? GetClipboardContent ();
abstract member GetClipboardContent : unit -> System.Windows.Forms.DataObject
override this.GetClipboardContent : unit -> System.Windows.Forms.DataObject
Public Overridable Function GetClipboardContent () As DataObject

Mengembalikan

DataObject yang mewakili isi sel terpilih.

Pengecualian

Contoh

Contoh kode berikut menunjukkan cara menambahkan konten yang dipilih DataGridView secara terprogram ke Clipboard. Contoh ini adalah bagian dari contoh yang lebih besar yang tersedia di Cara: Mengaktifkan Pengguna menyalin Beberapa Sel ke Clipboard dari kontrol Formulir Windows DataGridView.

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

Keterangan

Metode ini mengambil data yang mewakili wilayah yang ditentukan oleh sel yang dipilih. Wilayah ini adalah persegi terkecil yang mencakup semua sel yang dipilih. Nilai untuk setiap sel yang dipilih di wilayah ini diambil dengan memanggil DataGridViewCell.GetClipboardContent metode . Nilai tempat penampung kosong digunakan untuk sel yang tidak dipilih di wilayah ini. Metode ini menggabungkan nilai-nilai ini ke dalam beberapa DataObject format untuk disalin ke clipboard. Format clipboard yang didukung meliputi DataFormats.Text, , DataFormats.UnicodeTextDataFormats.Html, dan DataFormats.CommaSeparatedValue.

Untuk informasi selengkapnya, lihat Clipboard kelas.

Catatan Bagi Inheritor

Ambil alih metode ini untuk menyediakan nilai papan klip yang disesuaikan. Ini berguna, misalnya, untuk mendukung penyalinan nilai dari jenis sel kustom.

Berlaku untuk

Lihat juga