IDataObject.SetData Metod

Definition

Lagrar angivna data och dess associerade format i den här instansen.

Överlagringar

Name Description
SetData(Object)

Lagrar angivna data i den här instansen med hjälp av dataklassen för formatet.

SetData(String, Object)

Lagrar angivna data och dess associerade format i den här instansen.

SetData(Type, Object)

Lagrar angivna data och dess associerade klasstyp i den här instansen.

SetData(String, Boolean, Object)

Lagrar angivna data och dess associerade format i den här instansen med hjälp av ett booleskt värde för att ange om data kan konverteras till ett annat format.

SetData(Object)

Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs

Lagrar angivna data i den här instansen med hjälp av dataklassen för formatet.

public:
 void SetData(System::Object ^ data);
public void SetData(object data);
public void SetData(object? data);
abstract member SetData : obj -> unit
Public Sub SetData (data As Object)

Parametrar

data
Object

De data som ska lagras.

Exempel

I det DataObject här exemplet används klassen, som implementerar IDataObject, för att demonstrera användningen av SetData metoden. Först skapar den en komponent (myComponent) och lagrar den i ett dataobjekt (myDataObject). Sedan kontrollerar den om angivna data lagras i dataobjektet och visar resultatet i en meddelanderuta. Exemplet förutsätter att du har skapat en Form med namnet Form1.

private:
   void SetData1()
   {
      // Creates a component to store in the data object.
      Component^ myComponent = gcnew Component;
      
      // Creates a data object.
      DataObject^ myDataObject = gcnew DataObject;
      
      // Adds the component to the data object.
      myDataObject->SetData( myComponent );
      
      // Checks whether data of the specified type is in the data object.
      Type^ myType = myComponent->GetType();
      String^ myMessageText;
      if ( myDataObject->GetDataPresent( myType ) )
      {
         myMessageText = "Data of type " + myType->Name +
            " is present in the data object";
      }
      else
      {
         myMessageText = "Data of type " + myType->Name +
            " is not present in the data object";
      }
      
      // Displays the result in a message box.
      MessageBox::Show( myMessageText, "The Test Result" );
   }
private void SetData1() 
{
    // Creates a component to store in the data object.
    Component myComponent = new Component();
 
    // Creates a data object.
    DataObject myDataObject = new DataObject();

    // Adds the component to the data object.
    myDataObject.SetData(myComponent);
 
    // Checks whether data of the specified type is in the data object.
    Type myType = myComponent.GetType();
    string myMessageText;
    if(myDataObject.GetDataPresent(myType))
         myMessageText = "Data of type " + myType.Name + 
            " is present in the data object";
    else
        myMessageText = "Data of type " + myType.Name +
            " is not present in the data object";

    // Displays the result in a message box.
    MessageBox.Show(myMessageText, "The Test Result"); 
}
Private Sub SetData1()
   ' Creates a component to store in the data object.
   Dim myComponent As New System.ComponentModel.Component()
   
   ' Creates a data object.
   Dim myDataObject As New DataObject()
   
   ' Adds the component to the data object.
   myDataObject.SetData(myComponent)
   
   ' Checks whether data of the specified type is in the data object.
   Dim myType As Type = myComponent.GetType()
   Dim myMessageText As String
   If myDataObject.GetDataPresent(myType) Then
      myMessageText = "Data of type " + myType.Name + " is present in the data object"
   Else
      myMessageText = "Data of type " + myType.Name + " is not present in the data object"
   End If

   ' Displays the result in a message box.
   MessageBox.Show(myMessageText, "The Test Result")
End Sub

Kommentarer

Formatet härleds från dataklassen.

Data som lagras med den här metoden kan konverteras till ett kompatibelt format när de hämtas.

En implementering av den här metoden finns i DataObject.SetData.

Se även

Gäller för

SetData(String, Object)

Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs

Lagrar angivna data och dess associerade format i den här instansen.

public:
 void SetData(System::String ^ format, System::Object ^ data);
public void SetData(string format, object data);
public void SetData(string format, object? data);
abstract member SetData : string * obj -> unit
Public Sub SetData (format As String, data As Object)

Parametrar

format
String

Formatet som är associerat med data. Se DataFormats fördefinierade format.

data
Object

De data som ska lagras.

Exempel

I det DataObject här exemplet används klassen, som implementerar IDataObject, för att demonstrera användningen av SetData metoden. Först skapar den ett dataobjekt (myDataObject) och lagrar en sträng i objektet som UnicodeText anger formatet. Sedan hämtar den data som lagras i objektet som Text anger formatet, så att data konverteras till Text formatet. Resultatet visas i en meddelanderuta. Det här exemplet förutsätter att du har skapat en Form med namnet Form1.

private:
   void SetData2()
   {
      // Creates a data object.
      DataObject^ myDataObject = gcnew DataObject;
      
      // Stores a string, specifying the UnicodeText format.
      myDataObject->SetData( DataFormats::UnicodeText, "Hello World!" );
      
      // Retrieves the data by specifying the Text format.
      String^ myMessageText = "The data type is " +
         myDataObject->GetData( DataFormats::Text )->GetType()->Name;
      
      // Displays the result.
      MessageBox::Show( myMessageText, "The Test Result" );
   }
private void SetData2() 
{
    // Creates a data object.
    DataObject myDataObject = new DataObject();
 
    // Stores a string, specifying the UnicodeText format.
    myDataObject.SetData(DataFormats.UnicodeText, "Hello World!");
 
    // Retrieves the data by specifying the Text format.
    string myMessageText = "The data type is " + myDataObject.GetData(DataFormats.Text).GetType().Name;

    // Displays the result.
    MessageBox.Show(myMessageText, "The Test Result");
}
Private Sub SetData2()
   ' Creates a data object.
   Dim myDataObject As New DataObject()
   
   ' Stores a string, specifying the UnicodeText format.
   myDataObject.SetData(DataFormats.UnicodeText, "Hello World!")
   
   ' Retrieves the data by specifying the Text format.
   Dim myMessageText As String = "The data type is " & _
             myDataObject.GetData(DataFormats.Text).GetType().Name
   
   ' Displays the result.
   MessageBox.Show(myMessageText, "The Test Result")
End Sub

Kommentarer

Om du inte känner till målprogrammets format kan du lagra data i flera format med den här metoden.

Data som lagras med den här metoden kan konverteras till ett kompatibelt format när de hämtas.

En implementering av den här metoden finns i DataObject.SetData.

Se även

Gäller för

SetData(Type, Object)

Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs

Lagrar angivna data och dess associerade klasstyp i den här instansen.

public:
 void SetData(Type ^ format, System::Object ^ data);
public void SetData(Type format, object data);
public void SetData(Type format, object? data);
abstract member SetData : Type * obj -> unit
Public Sub SetData (format As Type, data As Object)

Parametrar

format
Type

Ett Type format som representerar det format som är associerat med data. Se DataFormats fördefinierade format.

data
Object

De data som ska lagras.

Exempel

I det DataObject här exemplet används klassen, som implementerar IDataObject, för att demonstrera användningen av SetData metoden. Först skapar den en komponent (myComponent) och lagrar den i ett dataobjekt (myDataObject), med hjälp av myType för att ange dataformatet. Sedan kontrollerar den om data av den angivna typen lagras i objektet och visar resultatet i en meddelanderuta. Exemplet förutsätter att du har skapat en Form med namnet Form1.

private:
   void SetData3()
   {
      // Creates a component.
      Component^ myComponent = gcnew Component;
      
      // Gets the type of the component.
      Type^ myType = myComponent->GetType();
      
      // Creates a data object.
      DataObject^ myDataObject = gcnew DataObject;
      
      // Stores the component in the data object.
      myDataObject->SetData( myType, myComponent );
      
      // Checks whether data of the specified type is in the data object.
      String^ myMessageText;
      if ( myDataObject->GetDataPresent( myType ) )
      {
         myMessageText = "Data of type " + myType->Name +
            " is stored in the data object";
      }
      else
      {
         myMessageText = "No data of type " + myType->Name +
            " is stored in the data object";
      }
      
      // Displays the result.
      MessageBox::Show( myMessageText, "The Test Result" );
   }
private void SetData3() 
{
    // Creates a component.
    Component myComponent = new Component();
 
    // Gets the type of the component.
    Type myType = myComponent.GetType();
 
    // Creates a data object.
    DataObject myDataObject = new DataObject();
 
    // Stores the component in the data object.
    myDataObject.SetData(myType, myComponent);
 
    // Checks whether data of the specified type is in the data object.
    string myMessageText;
    if(myDataObject.GetDataPresent(myType))
        myMessageText = "Data of type " + myType.Name + 
            " is stored in the data object";
    else
        myMessageText = "No data of type " + myType.Name +
            " is stored in the data object";
            
    // Displays the result.
    MessageBox.Show(myMessageText, "The Test Result");
}
Private Sub SetData3()
   ' Creates a component.
   Dim myComponent As New System.ComponentModel.Component()
   
   ' Gets the type of the component.
   Dim myType As Type = myComponent.GetType()
   
   ' Creates a data object.
   Dim myDataObject As New DataObject()
   
   ' Stores the component in the data object.
   myDataObject.SetData(myType, myComponent)
   
   ' Checks whether data of the specified type is in the data object.
   Dim myMessageText As String
   If myDataObject.GetDataPresent(myType) Then
      myMessageText = "Data of type " & myType.Name & " is stored in the data object"
   Else
      myMessageText = "No data of type " & myType.Name & " is stored in the data object"
   End If
   
   ' Displays the result.
   MessageBox.Show(myMessageText, "The Test Result")
End Sub

Kommentarer

Om du inte känner till målprogrammets format kan du lagra data i flera format med den här metoden.

Data som lagras med den här metoden kan konverteras till ett kompatibelt format när de hämtas.

En implementering av den här metoden finns i DataObject.SetData.

Se även

Gäller för

SetData(String, Boolean, Object)

Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs
Källa:
IDataObject.cs

Lagrar angivna data och dess associerade format i den här instansen med hjälp av ett booleskt värde för att ange om data kan konverteras till ett annat format.

public:
 void SetData(System::String ^ format, bool autoConvert, System::Object ^ data);
public void SetData(string format, bool autoConvert, object data);
public void SetData(string format, bool autoConvert, object? data);
abstract member SetData : string * bool * obj -> unit
Public Sub SetData (format As String, autoConvert As Boolean, data As Object)

Parametrar

format
String

Formatet som är associerat med data. Se DataFormats fördefinierade format.

autoConvert
Boolean

trueför att tillåta att data konverteras till ett annat format; annars . false

data
Object

De data som ska lagras.

Exempel

I det DataObject här exemplet används klassen, som implementerar IDataObject, för att demonstrera användningen av SetData metoden. Först skapar den ett dataobjekt (myDataObject) och lagrar en UnicodeText sträng i det, med parametern inställd på autoConvertfalse. Sedan hämtar den de format som är associerade med de data som lagras i objektet och visar resultatet i en meddelanderuta. Det enda format som är associerat med data är UnicodeText formatet. Det här exemplet förutsätter att du har skapat en Form med namnet Form1.

private:
   void SetData4()
   {
      // Creates a new data object.
      DataObject^ myDataObject = gcnew DataObject;

      // Adds UnicodeText string to the object, and set the autoConvert
      // parameter to false.
      myDataObject->SetData( DataFormats::UnicodeText, false, "My text String*" );

      // Gets the data format(s) in the data object.
      array<String^>^arrayOfFormats = myDataObject->GetFormats();

      // Stores the results in a string.
      String^ theResult = "The format(s) associated with the data are: \n";
      for ( int i = 0; i < arrayOfFormats->Length; i++ )
         theResult = theResult + arrayOfFormats[ i ], " \n";

      // Show the results in a message box.
      MessageBox::Show( theResult );
   }
       private void SetData4() 
       {
           // Creates a new data object.
           DataObject myDataObject = new DataObject();

           // Adds UnicodeText string to the object, and set the autoConvert 
           // parameter to false.
           myDataObject.SetData(DataFormats.UnicodeText, false, "My text string");

           // Gets the data format(s) in the data object.
           String[] arrayOfFormats = myDataObject.GetFormats();

           // Stores the results in a string.
           string theResult = "The format(s) associated with the data are:" + '\n';
           for(int i=0; i<arrayOfFormats.Length; i++)
               theResult += arrayOfFormats[i] + '\n';
           
           // Show the results in a message box. 
           MessageBox.Show(theResult);
       }
Private Sub SetData4()
    ' Creates a new data object.
    Dim myDataObject As New DataObject()

    ' Adds UnicodeText string to the object, and set the autoConvert
    ' parameter to false.
    myDataObject.SetData(DataFormats.UnicodeText, False, "My text string")

    ' Gets the data format(s) in the data object.
    Dim arrayOfFormats As [String]() = myDataObject.GetFormats()

    ' Stores the results in a string.
    Dim theResult As String = "The format(s) associated with the data are:" + _
            ControlChars.Cr
    Dim i As Integer
    For i = 0 To arrayOfFormats.Length - 1
        theResult += arrayOfFormats(i) + ControlChars.Cr
    Next i
    ' Show the results in a message box. 
    MessageBox.Show(theResult)
End Sub

Kommentarer

Om du inte känner till målprogrammets format kan du lagra data i flera format med den här metoden.

En implementering av den här metoden finns i DataObject.SetData.

Se även

Gäller för