DataFormats Classe

Definição

Fornece nomes de formato static e Clipboard predefinido. Use-os para identificar o formato de dados armazenado em um IDataObject.

public ref class DataFormats
public ref class DataFormats abstract sealed
public class DataFormats
public static class DataFormats
type DataFormats = class
Public Class DataFormats
Herança
DataFormats

Exemplos

O exemplo de código a seguir cria um novo formato de dados chamado myFormat. Em seguida, o código cria um MyNewObject que ele armazena em um DataObject. Ele DataObject é copiado para o Clipboard.

Em seguida, o DataObject valor é recuperado do Clipboard e o MyNewObject é recuperado. O valor do MyNewObject é impresso em uma caixa de texto. Esse código requer que textBox1 tenha sido criado e colocado em um formulário.

#using <System.dll>
#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>

using namespace System;
using namespace System::Windows::Forms;

// Creates a new type.

[Serializable]
public ref class MyNewObject: public Object
{
private:
   String^ myValue;

public:

   // Creates a default constructor for the class.
   MyNewObject()
   {
      myValue = "This is the value of the class";
   }


   property String^ MyObjectValue 
   {

      // Creates a property to retrieve or set the value.
      String^ get()
      {
         return myValue;
      }

      void set( String^ value )
      {
         myValue = value;
      }

   }

};

public ref class MyClass: public Form
{
protected:
   TextBox^ textBox1;

public:
   void MyClipboardMethod()
   {
      
      // Creates a new data format.
      DataFormats::Format^ myFormat = DataFormats::GetFormat( "myFormat" );
      
      /* Creates a new object and stores it in a DataObject using myFormat 
               * as the type of format. */
      MyNewObject^ myObject = gcnew MyNewObject;
      DataObject^ myDataObject = gcnew DataObject( myFormat->Name,myObject );
      
      // Copies myObject into the clipboard.
      Clipboard::SetDataObject( myDataObject );
      
      // Performs some processing steps.
      // Retrieves the data from the clipboard.
      IDataObject^ myRetrievedObject = Clipboard::GetDataObject();
      
      // Converts the IDataObject type to MyNewObject type. 
      MyNewObject^ myDereferencedObject = dynamic_cast<MyNewObject^>(myRetrievedObject->GetData( myFormat->Name ));
      
      // Prints the value of the Object in a textBox.
      textBox1->Text = myDereferencedObject->MyObjectValue;
   }

};
using System;
using System.Windows.Forms;

public class MyClass : Form {
    protected TextBox textBox1;
    
    public void MyClipboardMethod() {
       // Creates a new data format.
       DataFormats.Format myFormat = DataFormats.GetFormat("myFormat");
       
       /* Creates a new object and stores it in a DataObject using myFormat 
        * as the type of format. */
       MyNewObject myObject = new MyNewObject();
       DataObject myDataObject = new DataObject(myFormat.Name, myObject);
 
       // Copies myObject into the clipboard.
       Clipboard.SetDataObject(myDataObject);
 
       // Performs some processing steps.
 
       // Retrieves the data from the clipboard.
       IDataObject myRetrievedObject = Clipboard.GetDataObject();
 
       // Converts the IDataObject type to MyNewObject type. 
       MyNewObject myDereferencedObject = (MyNewObject)myRetrievedObject.GetData(myFormat.Name);
 
       // Prints the value of the Object in a textBox.
       textBox1.Text = myDereferencedObject.MyObjectValue;
    }
 }
 
 // Creates a new type.
 [Serializable]
 public class MyNewObject : Object {
    private string myValue;
 
    // Creates a default constructor for the class.
    public MyNewObject() {
       myValue = "This is the value of the class";
    }
 
    // Creates a property to retrieve or set the value.
    public string MyObjectValue {
       get {
          return myValue;
       }
       set {
          myValue = value;
       }
    }
 }
Option Explicit
Option Strict

Imports System.Windows.Forms

Public Class MyClass1
    Inherits Form
    Private textBox1 As TextBox

    Public Sub MyClipboardMethod()
        ' Creates a new data format.
        Dim myFormat As DataFormats.Format = _
            DataFormats.GetFormat("myFormat")
        
        ' Creates a new object and store it in a DataObject using myFormat 
        ' as the type of format. 
        Dim myObject As New MyNewObject()
        Dim myDataObject As New DataObject(myFormat.Name, myObject)
        
        ' Copies myObject into the clipboard.
        Clipboard.SetDataObject(myDataObject)
        
        ' Performs some processing steps.
        ' Retrieves the data from the clipboard.
        Dim myRetrievedObject As IDataObject = Clipboard.GetDataObject()
        
        ' Converts the IDataObject type to MyNewObject type. 
        Dim myDereferencedObject As MyNewObject = _
            CType(myRetrievedObject.GetData(myFormat.Name), MyNewObject)
        
        ' Print the value of the Object in a textBox.
        textBox1.Text = myDereferencedObject.MyObjectValue
    End Sub
End Class


' Creates a new type.
<Serializable()> Public Class MyNewObject
    Inherits Object
    Private myValue As String
    
    
    ' Creates a default constructor for the class.
    Public Sub New()
        myValue = "This is the value of the class"
    End Sub
    
    ' Creates a property to retrieve or set the value.
    
    Public Property MyObjectValue() As String
        Get
            Return myValue
        End Get
        Set
            myValue = value
        End Set
    End Property
End Class

Comentários

As IDataObject classes e DataObject as classes também usam a static lista de formatos para determinar o tipo de dados recuperados do sistema Clipboardou que são transferidos em uma operação de arrastar e soltar.

O GetFormat método permite que você:

  • Obtenha um objeto predefinido DataFormats.Format para um nome de formato ou número de ID.

  • Adicione um novo par de números de nome/ID de formato à static lista nesta classe e registre o formato com o registro de Windows como um Clipboard formato quando você passar o nome do formato.

Você pode obter o Id número ou o formato Name da propriedade apropriada na DataFormats.Format instância.

Campos

Bitmap

Especifica um formato de bitmap do Windows. Esse campo static é somente leitura.

CommaSeparatedValue

Especifica um formato CSV (valores separados por vírgula), que é um formato comum de intercâmbio usado por planilhas. Esse formato não é usado diretamente pelo Windows Forms. Esse campo static é somente leitura.

Dib

Especifica o formato DIB (bitmap independente de dispositivo) do Windows. Esse campo static é somente leitura.

Dif

Especifica o formato DIF, que o Windows Forms não usa diretamente. Esse campo static é somente leitura.

EnhancedMetafile

Especifica o formato de metarquivo avançado do Windows. Esse campo static é somente leitura.

FileDrop

Especifica o formato do depósito de arquivo do Windows, que o Windows Forms não usa diretamente. Esse campo static é somente leitura.

Html

Especifica o texto no formato HTML da Área de Transferência. Esse campo static é somente leitura.

Locale

Especifica o formato de cultura do Windows, que o Windows Forms não usa diretamente. Esse campo static é somente leitura.

MetafilePict

Especifica o formato WMF, que o Windows Forms não usa diretamente. Esse campo static é somente leitura.

OemText

Especifica o formato de texto de OEM (fabricante de equipamento original) do Windows padrão. Esse campo static é somente leitura.

Palette

Especifica o formato de paleta do Windows. Esse campo static é somente leitura.

PenData

Especifica o formato de dados de caneta do Windows, que consiste em traços de caneta para o software de manuscrito, o Windows Forms não usa esse formato. Esse campo static é somente leitura.

Riff

Especifica o formato de áudio RIFF (Resource Interchange File Format), que o Windows Forms não usa diretamente. Esse campo static é somente leitura.

Rtf

Especifica o texto que consiste em dados RTF (Formato Rich Text). Esse campo static é somente leitura.

Serializable

Especifica um formato que encapsula qualquer tipo de objeto do Windows Forms. Esse campo static é somente leitura.

StringFormat

Especifica o formato de classe de cadeia de caracteres do Windows Forms, que o Windows Forms usa para armazenar os objetos de cadeia de caracteres. Esse campo static é somente leitura.

SymbolicLink

Especifica o formato de link simbólico do Windows, que o Windows Forms não usa diretamente. Esse campo static é somente leitura.

Text

Especifica o formato de texto ANSI padrão. Esse campo static é somente leitura.

Tiff

Especifica o formato TIFF, que o Windows Forms não usa diretamente. Esse campo static é somente leitura.

UnicodeText

Especifica o formato de texto Unicode padrão do Windows. Esse campo static é somente leitura.

WaveAudio

Especifica o formato de áudio wave, que o Windows Forms não usa diretamente. Esse campo static é somente leitura.

Métodos

GetFormat(Int32)

Retorna um DataFormats.Format com a ID numérica da Área de Transferência do Windows e o nome da ID especificada.

GetFormat(String)

Retorna um DataFormats.Format com a ID numérica da Área de Transferência do Windows e o nome do formato especificado.

Aplica-se a

Confira também