Clipboard Sınıf

Tanım

Sistem panosuna veri yerleştirme ve veri alma yöntemlerini sağlar.Provides methods to place data on and retrieve data from the system Clipboard. Bu sınıf devralınamaz.This class cannot be inherited.

public ref class Clipboard abstract sealed
public ref class Clipboard sealed
public static class Clipboard
public sealed class Clipboard
type Clipboard = class
Public Class Clipboard
Public NotInheritable Class Clipboard
Devralma
Clipboard

Örnekler

Aşağıdaki kod örneği, Clipboard verileri yerleştirme ve sistem panosundan alma yöntemlerini kullanır.The following code example uses Clipboard methods to place data on and retrieve it from the system Clipboard. Bu kod,,,, button1 button2 textBox1 ve textBox2 tarafından oluşturulan ve forma yerleştirilmiş olduğunu varsayar.This code assumes button1, button2, textBox1, and textBox2 have been created and placed on the form.

button1_ClickYöntemi, SetDataObject metin kutusundan seçili metni alıp sistem panosuna yerleştirmek için çağırır.The button1_Click method calls SetDataObject to take selected text from the text box and place it on the system Clipboard.

button2_ClickYöntemi, GetDataObject sistem panosundan verileri almak için çağırır.The button2_Click method calls GetDataObject to retrieve data from the system Clipboard. Kod, IDataObject DataFormats döndürülen verileri ayıklamak için ve kullanır ve içindeki verileri görüntüler textBox2 .The code uses IDataObject and DataFormats to extract the data returned and displays the data in textBox2.

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

Açıklamalar

Sınıfıyla birlikte kullanılacak önceden tanımlanmış biçimlerin bir listesi için Clipboard , DataFormats sınıfına bakın.For a list of predefined formats to use with the Clipboard class, see the DataFormats class.

SetDataObjectGeçerli içeriğini değiştirerek panoya veri yerleştirme çağrısı yapın.Call SetDataObject to put data on the Clipboard, replacing its current contents. Panodaki verilerin kalıcı bir kopyasını yerleştirmek için copy parametresini olarak ayarlayın true .To place a persistent copy of the data on the Clipboard, set the copy parameter to true.

Not

Panodaki verileri birden çok biçimde yerleştirmek için DataObject sınıfı veya bir IDataObject uygulamayı kullanın.To place data on the Clipboard in multiple formats, use the DataObject class or an IDataObject implementation. Biçim gereksinimlerini bilmiyor olabileceğiniz bir hedef uygulamanın, verileri başarıyla alabilmesi olasılığını en üst düzeye çıkarmak için panodaki verileri birden çok biçimde yerleştirin.Place data on the Clipboard in multiple formats to maximize the possibility that a target application, whose format requirements you might not know, can successfully retrieve the data.

GetDataObjectPanodan veri alma çağrısı.Call GetDataObject to retrieve data from the Clipboard. Veriler, arabirimini uygulayan bir nesne olarak döndürülür IDataObject .The data is returned as an object that implements the IDataObject interface. IDataObjectNesnesinden verileri ayıklamak için içindeki ve alanları tarafından belirtilen yöntemleri kullanın DataFormats .Use the methods specified by IDataObject and fields in DataFormats to extract the data from the object. Aldığınız verilerin biçimini biliyorsanız, GetFormats IDataObject verilerin depolandığı tüm biçimlerin bir listesini almak için arabirimin yöntemini çağırın.If you do not know the format of the data you retrieved, call the GetFormats method of the IDataObject interface to get a list of all formats that data is stored in. Sonra GetData arabirimin yöntemini çağırın IDataObject ve uygulamanızın kullanabileceği bir biçim belirtin.Then call the GetData method of the IDataObject interface, and specify a format that your application can use.

' De .NET Framework 2.0.NET Framework 2.0 , Clipboard sınıfı sistem panosu ile çalışmayı kolaylaştıran ek yöntemler sağlar.In .NET Framework 2.0.NET Framework 2.0, the Clipboard class provides additional methods that make it easier to work with the system Clipboard. ClearPanodaki tüm verileri kaldırmak için yöntemini çağırın.Call the Clear method to remove all data from the Clipboard. Belirli bir biçimdeki verileri panoya eklemek için, var olan verileri değiştirerek, gibi uygun Set Biçim yöntemini çağırın SetText veya SetData biçimini belirtmek için yöntemini çağırın.To add data of a particular format to the Clipboard, replacing the existing data, call the appropriate SetFormat method, such as SetText, or call the SetData method to specify the format. Panodan belirli bir biçimdeki verileri almak için, önce Contains Format ContainsText panonun bu biçimde veri içerip içermediğini anlamak üzere uygun biçim yöntemini (gibi) çağırın ve ardından Get Format GetText Pano bunu içeriyorsa verileri almak için uygun biçim yöntemini (gibi) çağırın.To retrieve data of a particular format from the Clipboard, first call the appropriate ContainsFormat method (such as ContainsText) method to determine whether the Clipboard contains data in that format, and then call the appropriate GetFormat method (such as GetText) to retrieve the data if the Clipboard contains it. Bu işlemlerde biçim belirtmek için ContainsData GetData bunun yerine ve yöntemlerini çağırın.To specify the format in these operations, call the ContainsData and GetData methods instead.

Not

Tüm Windows tabanlı uygulamalar sistem panosunu paylaşır, bu nedenle başka bir uygulamaya geçtiğinizde içerik değişebilir.All Windows-based applications share the system Clipboard, so the contents are subject to change when you switch to another application.

Bir nesne, pano 'Ya yerleştirilecek şekilde seri hale getirilebilir olmalıdır.An object must be serializable for it to be put on the Clipboard. Bir pano yöntemine serileştirilebilir olmayan bir nesne geçirirseniz, yöntem özel durum oluşturmadan başarısız olur.If you pass a non-serializable object to a Clipboard method, the method will fail without throwing an exception. System.Runtime.SerializationSerileştirme hakkında daha fazla bilgi için bkz..See System.Runtime.Serialization for more information on serialization. Hedef uygulamanız çok özel bir veri biçimi gerektiriyorsa, serileştirme işlemindeki verilere eklenen üstbilgiler uygulamanın verilerinizi tanımasını engelleyebilir.If your target application requires a very specific data format, the headers added to the data in the serialization process may prevent the application from recognizing your data. Veri biçiminizi korumak için, verilerinizi Byte bir dizi olarak öğesine ekleyin MemoryStream ve MemoryStream yöntemine geçirin SetData .To preserve your data format, add your data as a Byte array to a MemoryStream and pass the MemoryStream to the SetData method.

ClipboardSınıfı yalnızca tek iş parçacığı apartmanı (STA) moduna ayarlanmış iş parçacıklarında kullanılabilir.The Clipboard class can only be used in threads set to single thread apartment (STA) mode. Bu sınıfı kullanmak için Main yönteminizin özniteliğiyle işaretlendiğinden emin olun STAThreadAttribute .To use this class, ensure that your Main method is marked with the STAThreadAttribute attribute.

Dosya biçimi Pano ile kullanılırken özel hususlar gerekli olabilir.Special considerations may be necessary when using the metafile format with the Clipboard. Sınıfın geçerli uygulamasındaki bir sınırlama nedeniyle DataObject , .NET Framework tarafından kullanılan meta dosyası biçimi eski bir meta dosyası biçimi kullanan uygulamalar tarafından tanınmayabilir.Due to a limitation in the current implementation of the DataObject class, the metafile format used by the .NET Framework may not be recognized by applications that use an older metafile format. Bu durumda, Win32 pano uygulaması programlama arabirimleri (API 'Ler) ile birlikte çalışmanız gerekir.In this case, you must interoperate with the Win32 Clipboard application programming interfaces (APIs).

Yöntemler

Clear()

Panodaki tüm verileri kaldırır.Removes all data from the Clipboard.

ContainsAudio()

Panoda, biçimde veri olup olmadığını gösterir WaveAudio .Indicates whether there is data on the Clipboard in the WaveAudio format.

ContainsData(String)

Panoda belirtilen biçimde olan veya bu biçime dönüştürülebilir verilerin olup olmadığını gösterir.Indicates whether there is data on the Clipboard that is in the specified format or can be converted to that format.

ContainsFileDropList()

Panoda bulunan FileDrop veya bu biçime dönüştürülebilir verilerin olup olmadığını gösterir.Indicates whether there is data on the Clipboard that is in the FileDrop format or can be converted to that format.

ContainsImage()

Panoda bulunan Bitmap veya bu biçime dönüştürülebilir verilerin olup olmadığını gösterir.Indicates whether there is data on the Clipboard that is in the Bitmap format or can be converted to that format.

ContainsText()

Textİşletim sistemine bağlı olarak, veya biçiminde Panoda veri olup olmadığını gösterir UnicodeText .Indicates whether there is data on the Clipboard in the Text or UnicodeText format, depending on the operating system.

ContainsText(TextDataFormat)

Panoda belirtilen değerin belirttiği biçimde metin verileri olup olmadığını gösterir TextDataFormat .Indicates whether there is text data on the Clipboard in the format indicated by the specified TextDataFormat value.

GetAudioStream()

Panodan bir ses akışı alır.Retrieves an audio stream from the Clipboard.

GetData(String)

Panodaki verileri belirtilen biçimde alır.Retrieves data from the Clipboard in the specified format.

GetDataObject()

Şu anda sistem panosunda olan verileri alır.Retrieves the data that is currently on the system Clipboard.

GetFileDropList()

Panodan dosya adları koleksiyonunu alır.Retrieves a collection of file names from the Clipboard.

GetImage()

Panodan bir görüntü alır.Retrieves an image from the Clipboard.

GetText()

Text UnicodeText İşletim sistemine bağlı olarak panodan veya biçiminde metin verileri alır.Retrieves text data from the Clipboard in the Text or UnicodeText format, depending on the operating system.

GetText(TextDataFormat)

Panodaki metin verilerini belirtilen değere göre belirtilen biçimde alır TextDataFormat .Retrieves text data from the Clipboard in the format indicated by the specified TextDataFormat value.

SetAudio(Byte[])

Panoyu temizler ve ardından Byte WaveAudio bir diziyi öğesine dönüştürdükten sonra biçimde ekler Stream .Clears the Clipboard and then adds a Byte array in the WaveAudio format after converting it to a Stream.

SetAudio(Stream)

Panoyu temizler ve sonra Stream WaveAudio biçiminde ekler.Clears the Clipboard and then adds a Stream in the WaveAudio format.

SetData(String, Object)

Panoyu temizler ve sonra verileri belirtilen biçimde ekler.Clears the Clipboard and then adds data in the specified format.

SetDataObject(Object)

Panoyu temizler ve kalıcı olmayan veriler üzerine yerleştirir.Clears the Clipboard and then places nonpersistent data on it.

SetDataObject(Object, Boolean)

Panoyu temizler ve sonra verileri üzerine yerleştirir ve uygulamanın çıktıktan sonra verilerin kalması gerekip gerekmediğini belirtir.Clears the Clipboard and then places data on it and specifies whether the data should remain after the application exits.

SetDataObject(Object, Boolean, Int32, Int32)

Panoyu temizler ve sonra belirtilen sayıda ve bu süre içinde belirtilen gecikme süresi arasında veri yerleştirmeyi dener, isteğe bağlı olarak, uygulama çıktıktan sonra panodaki verileri bırakır.Clears the Clipboard and then attempts to place data on it the specified number of times and with the specified delay between attempts, optionally leaving the data on the Clipboard after the application exits.

SetFileDropList(StringCollection)

Panoyu temizler ve sonra biçiminde bir dosya adları koleksiyonu ekler FileDrop .Clears the Clipboard and then adds a collection of file names in the FileDrop format.

SetImage(Image)

Panoyu temizler ve sonra Image Bitmap biçiminde ekler.Clears the Clipboard and then adds an Image in the Bitmap format.

SetText(String)

Panoyu temizler ve Text UnicodeText işletim sistemine bağlı olarak veya biçiminde metin verileri ekler.Clears the Clipboard and then adds text data in the Text or UnicodeText format, depending on the operating system.

SetText(String, TextDataFormat)

Panoyu temizler ve ardından metin verilerini belirtilen biçimde belirtilen biçimde ekler TextDataFormat .Clears the Clipboard and then adds text data in the format indicated by the specified TextDataFormat value.

Şunlara uygulanır

Ayrıca bkz.