DataGridView.ClipboardCopyMode Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia wartość wskazującą, czy użytkownicy mogą kopiować wartości tekstowe komórek do Clipboard i czy tekst nagłówka wiersza i kolumny jest uwzględniony.
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
Wartość właściwości
DataGridViewClipboardCopyMode Jedna z wartości. Wartość domyślna to EnableWithAutoHeaderText.
- Atrybuty
Wyjątki
Określona wartość podczas ustawiania tej właściwości nie jest prawidłową DataGridViewClipboardCopyMode wartością.
Przykłady
W poniższym przykładzie kodu pokazano, jak włączyć kopiowanie w kontrolce DataGridView . Ten przykład jest częścią większego przykładu dostępnego w temacie Instrukcje: umożliwianie użytkownikom kopiowania wielu komórek do Schowka z kontrolki Windows Forms 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
Uwagi
Kontrolka DataGridView kopiuje tekstową reprezentację każdej zaznaczonej komórki do Schowka. Ta wartość jest wartością komórki przekonwertowaną na ciąg lub, w przypadku komórek obrazów Description , wartość właściwości.
Wartości są kopiowane do Schowka w Textformatach , UnicodeText, Htmli CommaSeparatedValue . Te formaty są przydatne do wklejania zawartości do aplikacji, takich jak Notatnik, Microsoft Excel i Microsoft Word.
Kontrolka DataGridView kopiuje komórki zawarte w najmniejszym prostokątze zawierającym wszystkie zaznaczone komórki. Wiersze i kolumny, które nie zawierają żadnych zaznaczonych komórek, nie są reprezentowane w skopiowanych danych. Wszystkie niezaznaczone komórki w pozostałych wierszach i kolumnach są reprezentowane przez puste symbole zastępcze. W zależności od trybu kopiowania i trybu zaznaczenia można również skopiować wartości nagłówków skopiowanych wierszy i kolumn.
Gdy użytkownicy kopiują zawartość, kontrolka DataGridView dodaje DataObject element do Schowka. Ten obiekt danych jest pobierany z GetClipboardContent metody . Tę metodę można wywołać, gdy chcesz programowo dodać obiekt danych do Schowka.
Metoda GetClipboardContent pobiera wartości dla poszczególnych komórek, wywołując metodę DataGridViewCell.GetClipboardContent . Można zastąpić obie te metody w klasach pochodnych, aby dostosować układ skopiowanych komórek lub obsługiwać dodatkowe formaty danych.
Aby uzyskać więcej informacji na temat operacji schowka i formatów danych, zobacz klasę Clipboard .