Image.SetPropertyItem(PropertyItem) メソッド

定義

この 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)

パラメーター

propitem
PropertyItem

格納される PropertyItemThe PropertyItem to be stored.

例外

このイメージのイメージ形式は、プロパティ項目をサポートしていません。The image format of this image does not support property items.

次のコード例は、GetPropertyItem メソッドと SetPropertyItem メソッドの使用方法を示しています。The following code example demonstrates how to use the GetPropertyItem and SetPropertyItem methods. この例は、Windows フォームと共に使用するように設計されています。This example is designed to be used with Windows Forms. この例を実行するには、フォームに貼り付け、DemonstratePropertyItem メソッドを呼び出してフォームの Paint イベントを処理し、ePaintEventArgsとして渡します。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

注釈

イメージ形式でプロパティ項目がサポートされていない場合、このメソッドは "プロパティがサポートされていません" というメッセージで ArgumentException をスローします。If the image format does not support property items, this method throws ArgumentException with the message "Property not supported." 画像形式がプロパティ項目をサポートしていても、設定しようとしている特定のプロパティをサポートしていない場合、このメソッドは試行を無視しますが、例外はスローしません。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.

PropertyItem クラスにはパブリックコンストラクターがないため、プロパティ項目を設定することは困難です。It is difficult to set property items, because the PropertyItem class has no public constructors. この制限を回避する方法の1つとして、PropertyItems プロパティ値を取得するか、既にプロパティ項目がある ImageGetPropertyItem メソッドを呼び出すことによって、PropertyItem を取得します。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. 次に、PropertyItem のフィールドを設定し、それを SetPropertyItemに渡すことができます。Then you can set the fields of the PropertyItem and pass it to SetPropertyItem.

適用対象