DataGridView.GetClipboardContent Metoda
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 sformatowane wartości reprezentujące zawartość zaznaczonych komórek do skopiowania do obiektu 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
Zwraca
Obiekt DataObject reprezentujący zawartość zaznaczonych komórek.
Wyjątki
ClipboardCopyMode parametr jest ustawiony na Disablewartość .
Przykłady
W poniższym przykładzie kodu pokazano, jak programowo dodać wybraną DataGridView zawartość do Schowka. 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
Ta metoda pobiera dane reprezentujące region zdefiniowany przez zaznaczone komórki. Ten region jest najmniejszym prostokątem zawierającym wszystkie zaznaczone komórki. Wartość dla każdej wybranej komórki w tym regionie jest pobierana przez wywołanie DataGridViewCell.GetClipboardContent metody . Puste wartości zastępcze są używane dla niezaznakowanych komórek w tym regionie. Ta metoda łączy te wartości w DataObject format zawierający kilka formatów do kopiowania do schowka. Obsługiwane formaty schowka obejmują DataFormats.Text: , DataFormats.UnicodeText, DataFormats.Htmli DataFormats.CommaSeparatedValue.
Aby uzyskać więcej informacji, zobacz klasę Clipboard .
Uwagi dotyczące dziedziczenia
Zastąpij tę metodę, aby zapewnić dostosowane wartości schowka. Jest to przydatne na przykład do obsługi kopiowania wartości z niestandardowych typów komórek.