ExtendedProperties.Add 메서드
업데이트: 2007년 11월
ExtendedProperty 개체를 만들어 ExtendedProperties 컬렉션에 추가합니다.
네임스페이스: Microsoft.Ink
어셈블리: Microsoft.Ink(Microsoft.Ink.dll)
구문
‘선언
Public Function Add ( _
id As Guid, _
data As Object _
) As ExtendedProperty
‘사용 방법
Dim instance As ExtendedProperties
Dim id As Guid
Dim data As Object
Dim returnValue As ExtendedProperty
returnValue = instance.Add(id, data)
public ExtendedProperty Add(
Guid id,
Object data
)
public:
ExtendedProperty^ Add(
Guid id,
Object^ data
)
public ExtendedProperty Add(
Guid id,
Object data
)
public function Add(
id : Guid,
data : Object
) : ExtendedProperty
매개 변수
- id
형식: System.Guid
새 ExtendedProperty 개체의 식별자입니다.
- data
형식: System.Object
새 ExtendedProperty 개체의 데이터입니다.
반환 값
형식: Microsoft.Ink.ExtendedProperty
새 ExtendedProperty 개체입니다.
설명
참고
빈 ExtendedProperty 개체는 저장할 수 없습니다. ExtendedProperty 개체를 저장하려면 Data가 포함되어 있어야 합니다. ExtendedProperty 개체를 나중에 사용하도록 Stroke 개체에 추가하는 경우 ExtendedProperty 개체에 데이터가 없으면 예외가 throw됩니다.
참고
ExtendedProperties 컬렉션에 이미 있는 GUID(Globally Unique Identifier)로 ID 매개 변수를 설정하여 이 메서드를 호출하면 해당 GUID가 지정된 ExtendedProperty 개체에 대한 기존 데이터를 새 데이터가 대체합니다. 추가 ExtendedProperty 개체를 만들려면 해당 개체에 고유한 id 매개 변수 값을 지정합니다.
예제
이 예제에서는 CursorDown 및 Stroke 이벤트에 대한 알림을 신청하여 사용자가 스트로크를 만드는 데 걸리는 시간을 계산하는 방법을 보여 줍니다.
스트로크가 시작될 때 CursorDown 이벤트가 발생합니다. Stroke 개체의 ExtendedProperties 컬렉션에 현재 시간이 저장됩니다.
Private Sub mInkObject_CursorDown(ByVal sender As Object, ByVal e As InkCollectorCursorDownEventArgs)
' add extended property indicating the time the stroke started
' STROKE_START_GUID is class level string via GUID generator
e.Stroke.ExtendedProperties.Add(New Guid(STROKE_START_GUID), DateTime.Now)
End Sub
private void mInkObject_CursorDown(object sender, InkCollectorCursorDownEventArgs e)
{
// add extended property indicating the time the stroke started
// STROKE_START_GUID is class level string via GUID generator
e.Stroke.ExtendedProperties.Add(new Guid(STROKE_START_GUID), DateTime.Now);
}
스트로크가 완성되면 Stroke 이벤트가 발생합니다. Stroke 개체의 ExtendedProperties 컬렉션에서 시작 시간을 검색하여 경과 시간을 계산하는 데 사용합니다.
Private Sub mInkObject_Stroke1(ByVal sender As Object, ByVal e As InkCollectorStrokeEventArgs)
' check to see if extended property for start time exists
' Attempting to access an extended property that hasn't been created throws an exception
' STROKE_START_GUID is class level string via GUID generator
If (e.Stroke.ExtendedProperties.DoesPropertyExist(New Guid(STROKE_START_GUID))) Then
Dim startTime As DateTime = DirectCast(e.Stroke.ExtendedProperties(New Guid(STROKE_START_GUID)).Data, DateTime)
Dim endTime As DateTime = DateTime.Now
Dim span As TimeSpan = New TimeSpan(endTime.Ticks - startTime.Ticks)
' add extended property indicating the time the stroke ended
' STROKE_END_GUID is class level string via GUID generator
e.Stroke.ExtendedProperties.Add(New Guid(STROKE_END_GUID), endTime)
' display the number of seconds in creating this stroke
Me.statusLabelStrokeTime.Text = span.TotalSeconds.ToString()
End If
End Sub
private void mInkObject_Stroke1(object sender, InkCollectorStrokeEventArgs e)
{
// check to see if extended property for start time exists
// Attempting to access an extended property that hasn't been created throws an exception
// STROKE_START_GUID is class level string via GUID generator
if (e.Stroke.ExtendedProperties.DoesPropertyExist(new Guid(STROKE_START_GUID)))
{
DateTime startTime = (DateTime)e.Stroke.ExtendedProperties[new Guid(STROKE_START_GUID)].Data;
DateTime endTime = DateTime.Now;
TimeSpan span = new TimeSpan(endTime.Ticks - startTime.Ticks);
// add extended property indicating the time the stroke ended
// STROKE_END_GUID is class level string via GUID generator
e.Stroke.ExtendedProperties.Add(new Guid(STROKE_END_GUID), endTime);
// display the number of seconds in creating this stroke
this.statusLabelStrokeTime.Text = span.TotalSeconds.ToString();
}
}
플랫폼
Windows Vista
.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.
버전 정보
.NET Framework
3.0에서 지원