Clipboard.SetDataObject Metode

Definisi

Bersihkan Papan Klip lalu tambahkan data ke dalamnya.

Overload

Nama Deskripsi
SetDataObject(Object)

Menghapus Clipboard lalu menempatkan data yang tidak konsisten di dalamnya.

SetDataObject(Object, Boolean)

Menghapus Clipboard lalu menempatkan data di dalamnya dan menentukan apakah data harus tetap ada setelah aplikasi keluar.

SetDataObject(Object, Boolean, Int32, Int32)

Menghapus Clipboard lalu mencoba menempatkan data di dalamnya berapa kali dan dengan penundaan yang ditentukan antara upaya, secara opsional meninggalkan data di Clipboard setelah aplikasi keluar.

SetDataObject(Object)

Sumber:
Clipboard.cs
Sumber:
Clipboard.cs
Sumber:
Clipboard.cs
Sumber:
Clipboard.cs
Sumber:
Clipboard.cs

Menghapus Clipboard lalu menempatkan data yang tidak konsisten di dalamnya.

public:
 static void SetDataObject(System::Object ^ data);
public static void SetDataObject(object data);
static member SetDataObject : obj -> unit
Public Shared Sub SetDataObject (data As Object)

Parameter

data
Object

Data yang akan ditempatkan di Clipboard.

Pengecualian

Data tidak dapat ditempatkan pada Papan Klip. Ini biasanya terjadi ketika Clipboard sedang digunakan oleh proses lain.

Utas saat ini tidak dalam mode apartemen berulir tunggal (STA). Tambahkan ke STAThreadAttribute metode aplikasi Main Anda.

Nilainya data adalah null.

Contoh

Contoh kode berikut menggunakan SetDataObject untuk menempatkan data teks yang tidak konsisten ke Clipboard sistem. button1_Click Dalam metode , teks yang dipilih disalin dari textBox1 dan ditempelkan pada Clipboard. button2_Click Dalam metode , informasi diambil dari Clipboard dan ditampilkan di textBox2. Kode ini mengasumsikan button1, button2, textBox1, dan textBox2 telah dibuat dan ditempatkan pada formulir.

private:
   void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Takes the selected text from a text box and puts it on the clipboard.
      if ( !textBox1->SelectedText->Equals( "" ) )
      {
         Clipboard::SetDataObject( textBox1->SelectedText );
      }
      else
      {
         textBox2->Text = "No text selected in textBox1";
      }
   }

   void button2_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Declares an IDataObject to hold the data returned from the clipboard.
      // Retrieves the data from the clipboard.
      IDataObject^ iData = Clipboard::GetDataObject();
      
      // Determines whether the data is in a format you can use.
      if ( iData->GetDataPresent( DataFormats::Text ) )
      {
         // Yes it is, so display it in a text box.
         textBox2->Text = (String^)(iData->GetData( DataFormats::Text ));
      }
      else
      {
         // No it is not.
         textBox2->Text = "Could not retrieve data off the clipboard.";
      }
   }
private void button1_Click(object sender, System.EventArgs e) {
    // Takes the selected text from a text box and puts it on the clipboard.
    if(textBox1.SelectedText != "")
       Clipboard.SetDataObject(textBox1.SelectedText);
    else
       textBox2.Text = "No text selected in textBox1";
 }
 
 private void button2_Click(object sender, System.EventArgs e) {
    // Declares an IDataObject to hold the data returned from the clipboard.
    // Retrieves the data from the clipboard.
    IDataObject iData = Clipboard.GetDataObject();
 
    // Determines whether the data is in a format you can use.
    if(iData.GetDataPresent(DataFormats.Text)) {
       // Yes it is, so display it in a text box.
       textBox2.Text = (String)iData.GetData(DataFormats.Text); 
    }
    else {
       // No it is not.
       textBox2.Text = "Could not retrieve data off the clipboard.";
    }
 }
Private Sub button1_Click(sender As Object, e As System.EventArgs)
    ' Takes the selected text from a text box and puts it on the clipboard.
    If textBox1.SelectedText <> "" Then
        Clipboard.SetDataObject(textBox1.SelectedText)
    Else
        textBox2.Text = "No text selected in textBox1"
    End If
End Sub
 
Private Sub button2_Click(sender As Object, e As System.EventArgs)
    ' Declares an IDataObject to hold the data returned from the clipboard.
    ' Retrieves the data from the clipboard.
    Dim iData As IDataObject = Clipboard.GetDataObject()
    
    ' Determines whether the data is in a format you can use.
    If iData.GetDataPresent(DataFormats.Text) Then
        ' Yes it is, so display it in a text box.
        textBox2.Text = CType(iData.GetData(DataFormats.Text), String)
    Else
        ' No it is not.
        textBox2.Text = "Could not retrieve data off the clipboard."
    End If
End Sub

Keterangan

Data akan dihapus dari Clipboard sistem ketika aplikasi keluar.

Metode ini mencoba mengatur data sepuluh kali dalam interval 100 milidetik, dan melempar jika ExternalException semua upaya tidak berhasil.

Note

Objek harus dapat diserialisasikan agar diletakkan di Papan Klip. Jika Anda meneruskan objek yang tidak dapat diserialisasikan ke metode ini, itu akan gagal tanpa melemparkan pengecualian. Lihat System.Runtime.Serialization untuk informasi selengkapnya tentang serialisasi.

Kelas Clipboard hanya dapat digunakan dalam utas yang disetel ke mode apartemen utas tunggal (STA). Untuk menggunakan kelas ini, pastikan bahwa metode Main Anda ditandai dengan atribut STAThreadAttribute.

Lihat juga

Berlaku untuk

SetDataObject(Object, Boolean)

Sumber:
Clipboard.cs
Sumber:
Clipboard.cs
Sumber:
Clipboard.cs
Sumber:
Clipboard.cs
Sumber:
Clipboard.cs

Menghapus Clipboard lalu menempatkan data di dalamnya dan menentukan apakah data harus tetap ada setelah aplikasi keluar.

public:
 static void SetDataObject(System::Object ^ data, bool copy);
public static void SetDataObject(object data, bool copy);
static member SetDataObject : obj * bool -> unit
Public Shared Sub SetDataObject (data As Object, copy As Boolean)

Parameter

data
Object

Data yang akan ditempatkan di Clipboard.

copy
Boolean

true jika Anda ingin data tetap berada di Clipboard setelah aplikasi ini keluar; jika tidak, false.

Pengecualian

Data tidak dapat ditempatkan pada Papan Klip. Ini biasanya terjadi ketika Clipboard sedang digunakan oleh proses lain.

Utas saat ini tidak dalam mode apartemen berulir tunggal (STA). Tambahkan ke STAThreadAttribute metode aplikasi Main Anda.

Nilainya data adalah null.

Contoh

Metode berikut dijalankan dalam aplikasi. Ini menempatkan salinan persisten data teks yang dipilih dalam kotak teks pada Clipboard sistem. Kode ini mengasumsikan button1, textBox1, dan textBox2 telah dibuat dan ditempatkan pada formulir.

private:
   void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Takes the selected text from a text box and puts it on the clipboard.
      if ( !textBox1->SelectedText->Equals( "" ) )
      {
         Clipboard::SetDataObject( textBox1->SelectedText, true );
      }
      else
      {
         textBox2->Text = "No text selected in textBox1";
      }
   }
private void button1_Click(object sender, System.EventArgs e) {
    // Takes the selected text from a text box and puts it on the clipboard.
    if(textBox1.SelectedText != "")
       Clipboard.SetDataObject(textBox1.SelectedText, true);
    else
       textBox2.Text = "No text selected in textBox1";
 }
Private Sub button1_Click(sender As Object, e As System.EventArgs)
    ' Takes the selected text from a text box and puts it on the clipboard.
    If textBox1.SelectedText <> "" Then
        Clipboard.SetDataObject(textBox1.SelectedText, True)
    Else
        textBox2.Text = "No text selected in textBox1"
    End If
End Sub

Dalam aplikasi yang berbeda, metode berikut mengambil teks dari Clipboard sistem dan menempelkan teks ke dalam textBox2. Kode ini mengasumsikan button2 dan textBox2 telah dibuat dan ditempatkan pada formulir.

private:
   void button2_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Declares an IDataObject to hold the data returned from the clipboard.
      // Retrieves the data from the clipboard.
      IDataObject^ iData = Clipboard::GetDataObject();
      
      // Determines whether the data is in a format you can use.
      if ( iData->GetDataPresent( DataFormats::Text ) )
      {
         
         // Yes it is, so display it in a text box.
         textBox2->Text = (String^)(iData->GetData( DataFormats::Text ));
      }
      else
      {
         
         // No it is not.
         textBox2->Text = "Could not retrieve data off the clipboard.";
      }
   }
private void button2_Click(object sender, System.EventArgs e) {
    // Declares an IDataObject to hold the data returned from the clipboard.
    // Retrieves the data from the clipboard.
    IDataObject iData = Clipboard.GetDataObject();
 
    // Determines whether the data is in a format you can use.
    if(iData.GetDataPresent(DataFormats.Text)) {
       // Yes it is, so display it in a text box.
       textBox2.Text = (String)iData.GetData(DataFormats.Text); 
    }
    else {
       // No it is not.
       textBox2.Text = "Could not retrieve data off the clipboard.";
    }
 }
Private Sub button2_Click(sender As Object, e As System.EventArgs)
    ' Declares an IDataObject to hold the data returned from the clipboard.
    ' Retrieves the data from the clipboard.
    Dim iData As IDataObject = Clipboard.GetDataObject()
    
    ' Determines whether the data is in a format you can use.
    If iData.GetDataPresent(DataFormats.Text) Then
        ' Yes it is, so display it in a text box.
        textBox2.Text = CType(iData.GetData(DataFormats.Text), String)
    Else
        ' No it is not.
        textBox2.Text = "Could not retrieve data off the clipboard."
    End If
End Sub

Keterangan

copy Jika parameternya adalah false, data akan dihapus dari Clipboard sistem saat aplikasi keluar.

Metode ini mencoba mengatur data sepuluh kali dalam interval 100 milidetik, dan melempar jika ExternalException semua upaya tidak berhasil.

Note

Objek harus dapat diserialisasikan agar diletakkan di Papan Klip. Jika Anda meneruskan objek yang tidak dapat diserialisasikan ke metode ini, itu akan gagal tanpa melemparkan pengecualian. Lihat System.Runtime.Serialization untuk informasi selengkapnya tentang serialisasi.

Kelas Clipboard hanya dapat digunakan dalam utas yang disetel ke mode apartemen utas tunggal (STA). Untuk menggunakan kelas ini, pastikan bahwa metode Main Anda ditandai dengan atribut STAThreadAttribute.

Lihat juga

Berlaku untuk

SetDataObject(Object, Boolean, Int32, Int32)

Sumber:
Clipboard.cs
Sumber:
Clipboard.cs
Sumber:
Clipboard.cs
Sumber:
Clipboard.cs
Sumber:
Clipboard.cs

Menghapus Clipboard lalu mencoba menempatkan data di dalamnya berapa kali dan dengan penundaan yang ditentukan antara upaya, secara opsional meninggalkan data di Clipboard setelah aplikasi keluar.

public:
 static void SetDataObject(System::Object ^ data, bool copy, int retryTimes, int retryDelay);
public static void SetDataObject(object data, bool copy, int retryTimes, int retryDelay);
static member SetDataObject : obj * bool * int * int -> unit
Public Shared Sub SetDataObject (data As Object, copy As Boolean, retryTimes As Integer, retryDelay As Integer)

Parameter

data
Object

Data yang akan ditempatkan di Clipboard.

copy
Boolean

true jika Anda ingin data tetap berada di Clipboard setelah aplikasi ini keluar; jika tidak, false.

retryTimes
Int32

Berapa kali untuk mencoba menempatkan data di Clipboard.

retryDelay
Int32

Jumlah milidetik untuk dijeda di antara upaya.

Pengecualian

Utas saat ini tidak dalam mode apartemen berulir tunggal (STA). Tambahkan ke STAThreadAttribute metode aplikasi Main Anda.

data adalah null.

retryTimes kurang dari nol.

-atau-

retryDelay kurang dari nol.

Data tidak dapat ditempatkan pada Papan Klip. Ini biasanya terjadi ketika Clipboard sedang digunakan oleh proses lain.

Keterangan

Menambahkan data ke Clipboard terkadang dapat gagal jika Clipboard sibuk dengan utas atau aplikasi lain. Metode ini berguna untuk mengatasi masalah ini di lingkungan dengan penggunaan Clipboard yang berat.

copy Jika parameternya adalah false, data akan dihapus dari Clipboard sistem saat aplikasi keluar.

Note

Objek harus dapat diserialisasikan agar diletakkan di Papan Klip. Jika Anda meneruskan objek yang tidak dapat diserialisasikan ke metode ini, itu akan gagal tanpa melemparkan pengecualian. Lihat System.Runtime.Serialization untuk informasi selengkapnya tentang serialisasi.

Kelas Clipboard hanya dapat digunakan dalam utas yang disetel ke mode apartemen utas tunggal (STA). Untuk menggunakan kelas ini, pastikan bahwa metode Main Anda ditandai dengan atribut STAThreadAttribute.

Lihat juga

Berlaku untuk