次の方法で共有


DataFormats クラス

定義

static な定義済み Clipboard 形式名を提供します。 これらを使用して IDataObject に格納するデータの形式を識別します。

public ref class DataFormats
public ref class DataFormats abstract sealed
public class DataFormats
public static class DataFormats
type DataFormats = class
Public Class DataFormats
継承
DataFormats

次のコード例では、 という名前 myFormatの新しいデータ形式を作成します。 その後、コードは にDataObject格納する を作成MyNewObjectします。 DataObjectが にClipboardコピーされます。

次に DataObject 、 が から Clipboard 取得され、 MyNewObject が復旧されます。 の MyNewObject 値はテキスト ボックスに出力されます。 このコードでは、 が textBox1 作成され、フォームに配置されている必要があります。

#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

注釈

IDataObjectクラスと DataObject クラスは、書式リストをstatic使用して、システムClipboardから取得されるデータの種類、またはドラッグ アンド ドロップ操作で転送されるデータの種類を決定します。

GetFormatメソッドを使用すると、次のことができます。

  • 書式名または ID 番号の定義済み DataFormats.Format オブジェクトを取得します。

  • このクラスのリストに static 新しい形式名と ID 番号のペアを追加し、書式名を渡すときに形式として Clipboard Windows レジストリに形式を登録します。

インスタンス内の Id 適切なプロパティから数値または形式 NameDataFormats.Format 取得できます。

フィールド

Bitmap

Windows ビットマップ形式を指定します。 static フィールドは読み取り専用です。

CommaSeparatedValue

コンマ区切り (CSV: Comma-Separated Value) 形式を指定します。この形式はスプレッドシートで使用する交換形式です。 Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

Dib

Windows のデバイスに依存しないビットマップ (DIB: Device-Independent Bitmap) 形式を指定します。 static フィールドは読み取り専用です。

Dif

Windows DIF (Data Interchange Format) を指定します。Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

EnhancedMetafile

Windows 拡張メタファイル形式を指定します。 static フィールドは読み取り専用です。

FileDrop

Windows ファイル ドロップ形式を指定します。Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

Html

HTML クリップボード形式のテキストを指定します。 static フィールドは読み取り専用です。

Locale

Windows のカルチャで使用する形式を指定します。Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

MetafilePict

Windows メタファイル形式を指定します。Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

OemText

標準の Windows OEM (Original Equipment Manufacturer) テキスト形式を指定します。 static フィールドは読み取り専用です。

Palette

Windows パレット形式を指定します。 static フィールドは読み取り専用です。

PenData

手書きソフトウェアのペン ストロークで形成される Windows ペン データ形式を指定します。Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

Riff

RIFF (Resource Interchange File Format) オーディオ形式を指定します。Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

Rtf

RTF (Rich Text Format) データで構成されるテキストを指定します。 static フィールドは読み取り専用です。

Serializable

任意の種類の Windows フォーム オブジェクトをカプセル化する形式を指定します。 static フィールドは読み取り専用です。

StringFormat

Windows フォーム文字列クラス形式を指定します。Windows フォームは、この形式を使用して文字列オブジェクトを格納します。 static フィールドは読み取り専用です。

SymbolicLink

Windows シンボリック リンク形式を指定します。Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

Text

標準 ANSI テキスト形式を指定します。 static フィールドは読み取り専用です。

Tiff

TIFF (Tagged Image File Format) を指定します。Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

UnicodeText

標準 Windows Unicode テキスト形式を指定します。 static フィールドは読み取り専用です。

WaveAudio

WAVE オーディオ形式を指定します。Windows フォームでは、この形式が直接使用されることはありません。 static フィールドは読み取り専用です。

メソッド

GetFormat(Int32)

Windows クリップボード数値 ID および指定された ID の名前と共に DataFormats.Format を返します。

GetFormat(String)

Windows クリップボード数値 ID および指定されたフォーマット名と共に DataFormats.Format を返します。

適用対象

こちらもご覧ください