次の方法で共有


DataObject.SetData メソッド (String, Boolean, Object)

自動変換パラメータを使用して、データをほかの形式に変換できるかどうかを指定し、指定した形式とデータをこのインスタンスに格納します。

Overloads Public Overridable Sub SetData( _
   ByVal format As String, _   ByVal autoConvert As Boolean, _   ByVal data As Object _) Implements IDataObject.SetData
[C#]
public virtual void SetData(stringformat,boolautoConvert,objectdata);
[C++]
public: virtual void SetData(String* format,boolautoConvert,Object* data);
[JScript]
public function SetData(
   format : String,autoConvert : Boolean,data : Object);

パラメータ

  • format
    データに関連付けられている形式。定義済みの形式については、 DataFormats のトピックを参照してください。
  • autoConvert
    データを別の形式に変換できるようにする場合は true 。それ以外の場合は false
  • data
    格納するデータ。

実装

IDataObject.SetData

解説

データを取り出す側のアプリケーションの形式が不明な場合は、このメソッドを使用して、データを複数の形式で格納しておくことができます。

使用例

[Visual Basic, C#, C++] データを DataObject に格納し、ネイティブ形式のデータだけを取得できるように指定する例を次に示します。

[Visual Basic, C#, C++] まず、新しい DataObject が作成されます。次に、Unicode 形式のデータを DataObject に格納します。このとき、 autoConvert パラメータを false に設定します。

[Visual Basic, C#, C++] 次に、使用できるデータ形式のリストを DataObject に問い合わせます。Unicode 形式だけが返されます。ただし、Unicode データはテキスト形式やほかの形式に変換できます。

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

 
Private Sub AddMyData4()
    ' Creates a new data object, and assigns it the component.
    Dim myDataObject As New DataObject()
    
    ' Adds data to the DataObject, and specifies no format conversion.
    myDataObject.SetData(DataFormats.UnicodeText, False, "My Unicode data")
    
    ' Gets the data formats in the DataObject.
    Dim arrayOfFormats As String() = myDataObject.GetFormats()
    
    ' Prints the results.
    textBox1.Text = "The format(s) associated with the data are: " & ControlChars.Cr
    Dim i As Integer
    For i = 0 To arrayOfFormats.Length - 1
        textBox1.Text += arrayOfFormats(i) & ControlChars.Cr
    Next i
End Sub 'AddMyData4 

[C#] 
private void AddMyData4() {
    // Creates a new data object, and assigns it the component.
    DataObject myDataObject = new DataObject();
 
    // Adds data to the DataObject, and specifies no format conversion.
    myDataObject.SetData(DataFormats.UnicodeText, false, "My Unicode data");
 
    // Gets the data formats in the DataObject.
    String[] arrayOfFormats = myDataObject.GetFormats();
 
    // Prints the results.
    textBox1.Text = "The format(s) associated with the data are: " + '\n';
    for(int i=0; i<arrayOfFormats.Length; i++)
       textBox1.Text += arrayOfFormats[i] + '\n';
 }
 

[C++] 
private:
void AddMyData4() {
    // Creates a new data object, and assigns it the component.
    DataObject* myDataObject = new DataObject();
 
    // Adds data to the DataObject, and specifies no format conversion.
    myDataObject->SetData(DataFormats::UnicodeText, false, S"My Unicode data");
 
    // Gets the data formats in the DataObject.
    String* arrayOfFormats[] = myDataObject->GetFormats();
 
    // Prints the results.
    textBox1->Text = S"The format(s) associated with the data are: \n";
    for(int i=0; i<arrayOfFormats->Length; i++)
       textBox1->Text = String::Concat( textBox1->Text, arrayOfFormats[i], S"\n" );
 }
 

[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.SetData オーバーロードの一覧 | GetData | GetDataPresent | GetFormats | DataFormats