Edit

Share via


DataFormats Class

Definition

Provides static, predefined Clipboard format names. Use them to identify the format of data that you store in an IDataObject.

C#
public class DataFormats
C#
public static class DataFormats
Inheritance
DataFormats

Examples

The following code example creates a new data format named myFormat. The code then creates a MyNewObject which it stores in a DataObject. The DataObject is copied to the Clipboard.

Next, the DataObject is retrieved from the Clipboard and the MyNewObject is recovered. The value of the MyNewObject is printed in a text box. This code requires that textBox1 has been created and placed on a form.

C#
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;
       }
    }
 }

Remarks

The IDataObject and DataObject classes also use the static format list to determine the type of data that is retrieved from the system Clipboard, or that is transferred in a drag-and-drop operation.

The GetFormat method allows you to:

  • Get a predefined DataFormats.Format object for a format name or ID number.

  • Add a new format name/ID number pair to the static list in this class, and to register the format with the Windows registry as a Clipboard format when you pass it the format name.

You can get the Id number or format Name from the appropriate property in the DataFormats.Format instance.

Fields

Bitmap

Specifies a Windows bitmap format. This static field is read-only.

CommaSeparatedValue

Specifies a comma-separated value (CSV) format, which is a common interchange format used by spreadsheets. This format is not used directly by Windows Forms. This static field is read-only.

Dib

Specifies the Windows device-independent bitmap (DIB) format. This static field is read-only.

Dif

Specifies the Windows Data Interchange Format (DIF), which Windows Forms does not directly use. This static field is read-only.

EnhancedMetafile

Specifies the Windows enhanced metafile format. This static field is read-only.

FileDrop

Specifies the Windows file drop format, which Windows Forms does not directly use. This static field is read-only.

Html

Specifies text in the HTML Clipboard format. This static field is read-only.

Locale

Specifies the Windows culture format, which Windows Forms does not directly use. This static field is read-only.

MetafilePict

Specifies the Windows metafile format, which Windows Forms does not directly use. This static field is read-only.

OemText

Specifies the standard Windows original equipment manufacturer (OEM) text format. This static field is read-only.

Palette

Specifies the Windows palette format. This static field is read-only.

PenData

Specifies the Windows pen data format, which consists of pen strokes for handwriting software; Windows Forms does not use this format. This static field is read-only.

Riff

Specifies the Resource Interchange File Format (RIFF) audio format, which Windows Forms does not directly use. This static field is read-only.

Rtf

Specifies text consisting of Rich Text Format (RTF) data. This static field is read-only.

Serializable

Specifies a format that encapsulates any type of Windows Forms object. This static field is read-only.

StringFormat

Specifies the Windows Forms string class format, which Windows Forms uses to store string objects. This static field is read-only.

SymbolicLink

Specifies the Windows symbolic link format, which Windows Forms does not directly use. This static field is read-only.

Text

Specifies the standard ANSI text format. This static field is read-only.

Tiff

Specifies the Tagged Image File Format (TIFF), which Windows Forms does not directly use. This static field is read-only.

UnicodeText

Specifies the standard Windows Unicode text format. This static field is read-only.

WaveAudio

Specifies the wave audio format, which Windows Forms does not directly use. This static field is read-only.

Methods

GetFormat(Int32)

Returns a DataFormats.Format with the Windows Clipboard numeric ID and name for the specified ID.

GetFormat(String)

Returns a DataFormats.Format with the Windows Clipboard numeric ID and name for the specified format.

Applies to

Product Versions
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

See also