DataObject.GetData メソッド (Type)

指定したクラス型形式に関連付けられたデータを返します。

Overloads Public Overridable Function GetData( _
   ByVal format As Type _) As Object Implements IDataObject.GetData
[C#]
public virtual object GetData(Typeformat);
[C++]
public: virtual Object* GetData(Type* format);
[JScript]
public function GetData(
   format : Type) : Object;

パラメータ

  • format
    取得するデータの形式を表す Type

戻り値

指定した形式に関連付けられているデータ、または null 参照 (Visual Basic では Nothing) 。

実装

IDataObject.GetData

解説

指定した形式のデータが見つからない場合、このメソッドはデータをその形式に変換しようとします。データを指定した形式に変換できない場合や、データの格納時に自動変換に false が設定されていた場合は、このメソッドは null 参照 (Visual Basic では Nothing) を返します。

データが特定の形式に関連付けられているかどうか、またはデータをその形式に変換できるかどうかを確認するには、 GetData を呼び出す前に GetDataPresent を呼び出します。インスタンスに格納されているデータに対して有効な形式のリストを取得するには、 GetFormats を呼び出します。

メモ   形式変換を有効にしてデータが格納されている場合、要求した形式が、格納されている形式と互換性があれば、そのデータを別の形式に変換できます。たとえば、Unicode として格納されたデータをテキストに変換できます。

使用例

[Visual Basic, C#, C++] DataObject に格納されているデータを取得する例を次に示します。まず、コンポーネントを含む新しい DataObject が作成されます。次に、データの型を指定して、データを取得します。取得したデータの型がテキスト ボックスに表示されます。

[Visual Basic, C#, C++] このコードは、 textBox1 が作成されていることを前提にしています。

 
Private Sub GetMyData()
    ' Creates a component to store in the data object.
    Dim myComponent As New Component()
    
    ' Creates a new data object and assigns it the component.
    Dim myDataObject As New DataObject(myComponent)
    
    ' Creates a type to store the type of data.
    Dim myType As Type = myComponent.GetType()
    
    ' Retrieves the data using myType to represent its type.
    Dim myObject As Object = myDataObject.GetData(myType)
    If Not (myObject Is Nothing) Then
        textBox1.Text = "The data type stored in the DataObject is: " & myObject.GetType().Name
    Else
        textBox1.Text = "Data of the specified type was not stored " & "in the DataObject."
    End If
End Sub 'GetMyData

[C#] 
private void GetMyData() {
    // Creates a component to store in the data object.
    Component myComponent = new Component();
 
    // Creates a new data object and assigns it the component.
    DataObject myDataObject = new DataObject(myComponent);
 
    // Creates a type to store the type of data.
    Type myType = myComponent.GetType();
 
    // Retrieves the data using myType to represent its type.
    Object myObject = myDataObject.GetData(myType);
    if(myObject != null)
       textBox1.Text = "The data type stored in the DataObject is: " +
       myObject.GetType().Name;
    else
       textBox1.Text = "Data of the specified type was not stored " +
       "in the DataObject.";
 }
 

[C++] 
private:
void GetMyData() {
    // Creates a component to store in the data object.
    Component* myComponent = new Component();
 
    // Creates a new data object and assigns it the component.
    DataObject* myDataObject = new DataObject(myComponent);
 
    // Creates a type to store the type of data.
    Type* myType = myComponent->GetType();
 
    // Retrieves the data using myType to represent its type.
    Object* myObject = myDataObject->GetData(myType);
    if(myObject != 0)
       textBox1->Text = String::Format( S"The data type stored in the DataObject is: {0}", myObject->GetType()->Name );
    else
       textBox1->Text = S"Data of the specified type was not stored in the DataObject.";
 }
 

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

DataObject クラス | DataObject メンバ | System.Windows.Forms 名前空間 | DataObject.GetData オーバーロードの一覧 | SetData | Type | GetDataPresent | DataFormats | GetFormats