次の方法で共有


ExtendedProperty.Data プロパティ

ExtendedProperty オブジェクトのデータを取得または設定します。

名前空間 :  Microsoft.Ink
アセンブリ :  Microsoft.Ink (Microsoft.Ink.dll 内)

構文

'宣言
Public Property Data As Object
'使用
Dim instance As ExtendedProperty
Dim value As Object

value = instance.Data

instance.Data = value
public Object Data { get; set; }
public:
property Object^ Data {
    Object^ get ();
    void set (Object^ value);
}
/** @property */
public Object get_Data()
/** @property */
public  void set_Data(Object value)
public function get Data () : Object
public function set Data (value : Object)

プロパティ値

型 : System.Object
ExtendedProperty オブジェクトのデータ。

例外

例外 条件
ArgumentException

Data が次のいずれかの型に設定されていません。

Char

Char 配列

Byte

Byte 配列

Int16

Int16 配列

UInt16

UInt16 配列

Int32

Int32 配列

UInt32

UInt32 配列

Int64

Int64 配列

UInt64

UInt64 配列

Single

Single 配列

Double

Double 配列

DateTime

DateTime 配列

Boolean

Boolean 配列

String

Decimal

Decimal 配列

解説

データは、Stroke オブジェクトが作成された時刻や日付などの、それ以外には設定できない情報で構成されます。

この例では、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

参照

参照

ExtendedProperty クラス

ExtendedProperty メンバ

Microsoft.Ink 名前空間

DrawingAttributes.ExtendedProperties

ExtendedProperties

Stroke.ExtendedProperties