Image.SetPropertyItem(PropertyItem) Methode

Definition

Speichert ein Eigenschaftenelement (Metadaten) in diesem Image.Stores a property item (piece of metadata) in this Image.

public:
 void SetPropertyItem(System::Drawing::Imaging::PropertyItem ^ propitem);
public void SetPropertyItem (System.Drawing.Imaging.PropertyItem propitem);
member this.SetPropertyItem : System.Drawing.Imaging.PropertyItem -> unit
Public Sub SetPropertyItem (propitem As PropertyItem)

Parameter

propitem
PropertyItem

Das zu speichernde PropertyItem.The PropertyItem to be stored.

Ausnahmen

Das Bildformat dieses Bilds unterstützt nicht die Eigenschaftselemente.The image format of this image does not support property items.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die GetPropertyItem -Methode und die-Methode verwendet werden SetPropertyItem .The following code example demonstrates how to use the GetPropertyItem and SetPropertyItem methods. Dieses Beispiel ist für die Verwendung mit Windows Forms konzipiert.This example is designed to be used with Windows Forms. Um dieses Beispiel auszuführen, fügen Sie es in ein Formular ein, und behandeln Sie das-Ereignis des Formulars Paint , indem Sie die-Methode aufrufen, indem Sie DemonstratePropertyItem e als übergeben PaintEventArgs .To run this example, paste it into a form, and handle the form's Paint event by calling the DemonstratePropertyItem method, passing e as PaintEventArgs.

private:
   void DemonstratePropertyItem( PaintEventArgs^ e )
   {
      // Create two images.
      Image^ image1 = Image::FromFile( "c:\\FakePhoto1.jpg" );
      Image^ image2 = Image::FromFile( "c:\\FakePhoto2.jpg" );

      // Get a PropertyItem from image1.
      PropertyItem^ propItem = image1->GetPropertyItem( 20624 );

      // Change the ID of the PropertyItem.
      propItem->Id = 20625;

      // Set the PropertyItem for image2.
      image2->SetPropertyItem( propItem );

      // Draw the image.
      e->Graphics->DrawImage( image2, 20.0F, 20.0F );
   }
private void DemonstratePropertyItem(PaintEventArgs e)
{

    // Create two images.
    Image image1 = Image.FromFile("c:\\FakePhoto1.jpg");
    Image image2 = Image.FromFile("c:\\FakePhoto2.jpg");

    // Get a PropertyItem from image1.
    PropertyItem propItem = image1.GetPropertyItem(20624);

    // Change the ID of the PropertyItem.
    propItem.Id = 20625;

    // Set the PropertyItem for image2.
    image2.SetPropertyItem(propItem);

    // Draw the image.
    e.Graphics.DrawImage(image2, 20.0F, 20.0F);
}
Private Sub DemonstratePropertyItem(ByVal e As PaintEventArgs)

    ' Create two images.
    Dim image1 As Image = Image.FromFile("c:\FakePhoto1.jpg")
    Dim image2 As Image = Image.FromFile("c:\FakePhoto2.jpg")

    ' Get a PropertyItem from image1.
    Dim propItem As PropertyItem = image1.GetPropertyItem(20624)

    ' Change the ID of the PropertyItem.
    propItem.Id = 20625

    ' Set the PropertyItem for image2.
    image2.SetPropertyItem(propItem)

    ' Draw the image.
    e.Graphics.DrawImage(image2, 20.0F, 20.0F)
End Sub

Hinweise

Wenn das Bildformat keine Eigenschafts Elemente unterstützt, löst diese Methode ArgumentException mit der Meldung "Eigenschaft wird nicht unterstützt." aus.If the image format does not support property items, this method throws ArgumentException with the message "Property not supported." Wenn das Bildformat Eigenschafts Elemente unterstützt, aber die bestimmte Eigenschaft, die Sie festlegen möchten, nicht unterstützt, ignoriert diese Methode den Versuch, löst jedoch keine Ausnahme aus.If the image format supports property items but does not support the particular property you are attempting to set, this method ignores the attempt but does not throw an exception.

Es ist schwierig, Eigenschaften Elemente festzulegen, da die PropertyItem Klasse keine öffentlichen Konstruktoren aufweist.It is difficult to set property items, because the PropertyItem class has no public constructors. Eine Möglichkeit, diese Einschränkung zu umgehen, ist PropertyItem das Abrufen eines durch Abrufen des PropertyItems Eigenschafts Werts oder Aufrufen der- GetPropertyItem Methode eines Image , das bereits über Eigenschafts Elemente verfügt.One way to work around this restriction is to obtain a PropertyItem by retrieving the PropertyItems property value or calling the GetPropertyItem method of an Image that already has property items. Anschließend können Sie die Felder des festlegen PropertyItem und an übergeben SetPropertyItem .Then you can set the fields of the PropertyItem and pass it to SetPropertyItem.

Gilt für: