IDataObject.SetData Methode

Definitie

Slaat de opgegeven gegevens en de bijbehorende indeling op in dit exemplaar.

Overloads

Name Description
SetData(Object)

Slaat de opgegeven gegevens in dit exemplaar op met behulp van de klasse van de gegevens voor de indeling.

SetData(String, Object)

Slaat de opgegeven gegevens en de bijbehorende indeling op in dit exemplaar.

SetData(Type, Object)

Slaat de opgegeven gegevens en het bijbehorende klassetype op in dit exemplaar.

SetData(String, Boolean, Object)

Slaat de opgegeven gegevens en de bijbehorende indeling in dit exemplaar op met behulp van een Booleaanse waarde om op te geven of de gegevens naar een andere indeling kunnen worden geconverteerd.

SetData(Object)

Slaat de opgegeven gegevens in dit exemplaar op met behulp van de klasse van de gegevens voor de indeling.

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

Parameters

data
Object

De gegevens die moeten worden opgeslagen.

Voorbeelden

In dit voorbeeld wordt de DataObject klasse gebruikt, die wordt geïmplementeerd IDataObject, om het gebruik van de SetData methode te demonstreren. Eerst wordt een onderdeel (myComponent) gemaakt en opgeslagen in een gegevensobject (myDataObject). Vervolgens wordt gecontroleerd of de opgegeven gegevens zijn opgeslagen in het gegevensobject en wordt het resultaat weergegeven in een berichtvak. In het voorbeeld wordt ervan uitgegaan dat u een Form benoemde naam Form1hebt gemaakt.

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

Opmerkingen

De indeling is afgeleid van de gegevensklasse.

Gegevens die met deze methode worden opgeslagen, kunnen worden geconverteerd naar een compatibele indeling wanneer ze worden opgehaald.

Zie voor een implementatie van deze methode DataObject.SetData.

Zie ook

Van toepassing op

SetData(String, Object)

Slaat de opgegeven gegevens en de bijbehorende indeling op in dit exemplaar.

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

Parameters

format
String

De indeling die aan de gegevens is gekoppeld. Zie DataFormats voor vooraf gedefinieerde indelingen.

data
Object

De gegevens die moeten worden opgeslagen.

Voorbeelden

In dit voorbeeld wordt de DataObject klasse gebruikt, die wordt geïmplementeerd IDataObject, om het gebruik van de SetData methode te demonstreren. Eerst wordt een gegevensobject (myDataObject) gemaakt en wordt een tekenreeks opgeslagen in het object dat de UnicodeText indeling opgeeft. Vervolgens worden de gegevens opgehaald die zijn opgeslagen in het object waarin de Text indeling wordt opgegeven, zodat de gegevens worden geconverteerd naar de Text indeling. Het resultaat wordt weergegeven in een berichtvak. In dit voorbeeld wordt ervan uitgegaan dat u een Form benoemde naam Form1hebt gemaakt.

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

Opmerkingen

Als u de indeling van de doeltoepassing niet kent, kunt u gegevens opslaan in meerdere indelingen met behulp van deze methode.

Gegevens die met deze methode worden opgeslagen, kunnen worden geconverteerd naar een compatibele indeling wanneer ze worden opgehaald.

Zie voor een implementatie van deze methode DataObject.SetData.

Zie ook

Van toepassing op

SetData(Type, Object)

Slaat de opgegeven gegevens en het bijbehorende klassetype op in dit exemplaar.

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

Parameters

format
Type

Een Type weergave van de indeling die aan de gegevens is gekoppeld. Zie DataFormats voor vooraf gedefinieerde indelingen.

data
Object

De gegevens die moeten worden opgeslagen.

Voorbeelden

In dit voorbeeld wordt de DataObject klasse gebruikt, die wordt geïmplementeerd IDataObject, om het gebruik van de SetData methode te demonstreren. Eerst wordt een onderdeel (myComponent) gemaakt en opgeslagen in een gegevensobject (myDataObject), met behulp van myType het opgeven van de gegevensindeling. Vervolgens wordt gecontroleerd of de gegevens van het opgegeven type zijn opgeslagen in het object en wordt het resultaat weergegeven in een berichtvak. In het voorbeeld wordt ervan uitgegaan dat u een Form benoemde naam Form1hebt gemaakt.

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

Opmerkingen

Als u de indeling van de doeltoepassing niet kent, kunt u gegevens opslaan in meerdere indelingen met behulp van deze methode.

Gegevens die met deze methode worden opgeslagen, kunnen worden geconverteerd naar een compatibele indeling wanneer ze worden opgehaald.

Zie voor een implementatie van deze methode DataObject.SetData.

Zie ook

Van toepassing op

SetData(String, Boolean, Object)

Slaat de opgegeven gegevens en de bijbehorende indeling in dit exemplaar op met behulp van een Booleaanse waarde om op te geven of de gegevens naar een andere indeling kunnen worden geconverteerd.

public:
 void SetData(System::String ^ format, bool autoConvert, System::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)

Parameters

format
String

De indeling die aan de gegevens is gekoppeld. Zie DataFormats voor vooraf gedefinieerde indelingen.

autoConvert
Boolean

true om toe te staan dat de gegevens worden geconverteerd naar een andere indeling; anders, false.

data
Object

De gegevens die moeten worden opgeslagen.

Voorbeelden

In dit voorbeeld wordt de DataObject klasse gebruikt, die wordt geïmplementeerd IDataObject, om het gebruik van de SetData methode te demonstreren. Eerst maakt het een gegevensobject (myDataObject) en slaat er een UnicodeText tekenreeks in op, waarbij de autoConvert parameter is ingesteld op false. Vervolgens worden de opmaak(en) opgehaald die zijn gekoppeld aan de gegevens die zijn opgeslagen in het object en wordt het resultaat weergegeven in een berichtvak. De enige indeling die aan de gegevens is gekoppeld, is de UnicodeText indeling. In dit voorbeeld wordt ervan uitgegaan dat u een Form benoemde naam Form1hebt gemaakt.

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

Opmerkingen

Als u de indeling van de doeltoepassing niet kent, kunt u gegevens opslaan in meerdere indelingen met behulp van deze methode.

Zie voor een implementatie van deze methode DataObject.SetData.

Zie ook

Van toepassing op