다음을 통해 공유


DrawingAttributes.ExtendedProperties 속성

업데이트: 2007년 11월

응용 프로그램에서 정의된 데이터의 컬렉션을 가져옵니다.

네임스페이스:  Microsoft.Ink
어셈블리:  Microsoft.Ink(Microsoft.Ink.dll)

구문

‘선언
Public ReadOnly Property ExtendedProperties As ExtendedProperties
‘사용 방법
Dim instance As DrawingAttributes
Dim value As ExtendedProperties

value = instance.ExtendedProperties
public ExtendedProperties ExtendedProperties { get; }
public:
property ExtendedProperties^ ExtendedProperties {
    ExtendedProperties^ get ();
}
/** @property */
public ExtendedProperties get_ExtendedProperties()
public function get ExtendedProperties () : ExtendedProperties

속성 값

형식: Microsoft.Ink.ExtendedProperties
응용 프로그램에서 정의된 데이터의 컬렉션입니다.

설명

응용 프로그램에서는 ExtendedProperties 속성을 사용하여 DrawingAttributes 개체에 저장된 사용자 지정 데이터에 액세스할 수 있습니다. 이 사용자 지정 데이터는 개체와 함께 자동으로 serialize됩니다.

예제

이 C# 예제에는 세 가지 잉크 종류(얇은 검정색 펜, 두꺼운 파란색 마커 및 노란색 형광펜)만 허용되는 잉크 사용 응용 프로그램이 들어 있습니다. 이러한 세 가지 옵션에 대한 DrawingAttributes 개체의 배열인 availableDrawingAttributes를 만들고 각 개체에 식별 GUID인 drawingAttributesNameId를 부여합니다. 생성자에서 InitializeDrawingAttributes 메서드를 호출하고, 사용자가 펜을 변경할 때마다 ChangeDrawingAttributes 메서드를 호출합니다. 펜 이름은 DrawingAttributes 개체의 ExtendedProperty로 저장됩니다. Label인 labelPenName을 사용하여 펜 이름을 표시합니다.

using Microsoft.Ink;
//...
    private InkOverlay theInkOverlay;
    private DrawingAttributes[] availableDrawingAttributes;
    private Guid drawingAttributesNameId;
    private System.Windows.Forms.Label labelPenName; 
//...
    private void InitializeDrawingAttributes()
    {
        availableDrawingAttributes = new DrawingAttributes[3];
        drawingAttributesNameId = Guid.NewGuid();

        // Thin pen
        availableDrawingAttributes[0] = new DrawingAttributes(new Pen(Color.Black, 1));
        availableDrawingAttributes[0].ExtendedProperties.Add(drawingAttributesNameId, "Thin pen");

        // Thick marker
        availableDrawingAttributes[1] = new DrawingAttributes(new Pen(Color.Blue, 200));
        availableDrawingAttributes[1].ExtendedProperties.Add(drawingAttributesNameId, "Thick marker");

        // Highlighter
        availableDrawingAttributes[2] = new DrawingAttributes(Color.Yellow);
        availableDrawingAttributes[2].Height = 800;
        availableDrawingAttributes[2].Width = 1;
        availableDrawingAttributes[2].PenTip = PenTip.Rectangle;
        availableDrawingAttributes[2].Transparency = 125;
        availableDrawingAttributes[2].ExtendedProperties.Add(drawingAttributesNameId, "Highlighter");
    }

    private void ChangeDrawingAttributes(int index)
    {
        // Set the default drawing attributes of the InkOverlay
        theInkOverlay.DefaultDrawingAttributes = availableDrawingAttributes[index];

        // Display the pen name that you are using
        labelPenName.Text = 
            (String)availableDrawingAttributes[index].ExtendedProperties[drawingAttributesNameId].Data;
    }

이 Microsoft® Visual Basic® .NET 예제에는 세 가지 잉크 종류(얇은 검정색 펜, 두꺼운 파란색 마커 및 노란색 형광펜)만 허용되는 잉크 사용 응용 프로그램이 들어 있습니다. 이러한 세 가지 옵션에 대한 DrawingAttributes 개체의 배열인 availableDrawingAttributes를 만들고 각 개체에 식별 GUID인 drawingAttributesNameId를 부여합니다. 생성자에서 InitializeDrawingAttributes 메서드를 호출하고, 사용자가 펜을 변경할 때마다 ChangeDrawingAttributes 메서드를 호출합니다. 펜 이름은 DrawingAttributes 개체의 ExtendedProperty로 저장됩니다. Label인 labelPenName을 사용하여 펜 이름을 표시합니다.

Imports Microsoft.Ink
'...
Private WithEvents theInkOverlay As InkOverlay
Private availableDrawingAttributes As DrawingAttributes()
Private drawingAttributesNameId As Guid
Friend WithEvents LabelPenName As System.Windows.Forms.Label
'...
Private Sub InitializeDrawingAttributes()
    ReDim availableDrawingAttributes(2)
    drawingAttributesNameId = Guid.NewGuid()

    'Thin pen
    availableDrawingAttributes(0) = New DrawingAttributes(New Pen(Color.Black, 1))
    availableDrawingAttributes(0).ExtendedProperties.Add(drawingAttributesNameId, "Thin pen")

    'Thick marker
    availableDrawingAttributes(1) = New DrawingAttributes(New Pen(Color.Blue, 200))
    availableDrawingAttributes(1).ExtendedProperties.Add(drawingAttributesNameId, "Thick marker")

    'Highlighter
    availableDrawingAttributes(2) = New DrawingAttributes(Color.Yellow)
    availableDrawingAttributes(2).Height = 800
    availableDrawingAttributes(2).Width = 1
    availableDrawingAttributes(2).PenTip = PenTip.Rectangle
    availableDrawingAttributes(2).Transparency = 125
    availableDrawingAttributes(2).ExtendedProperties.Add(drawingAttributesNameId, "Highlighter")
End Sub

Private Sub ChangeDrawingAttributes(ByVal index As Integer)
    'Set the default drawing attributes of the InkOverlay
    theInkOverlay.DefaultDrawingAttributes = availableDrawingAttributes(index)

    'Display the pen name that you are using
    LabelPenName.Text = _
        availableDrawingAttributes(index).ExtendedProperties(drawingAttributesNameId).Data
End Sub

플랫폼

Windows Vista

.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

3.0에서 지원

참고 항목

참조

DrawingAttributes 클래스

DrawingAttributes 멤버

Microsoft.Ink 네임스페이스

ExtendedProperties

ExtendedProperty