Bagikan melalui


InkCollectorNewInAirPacketsEventArgs.PacketData Property

Gets an array of type Int32 containing the selected data for the packet.

Namespace:  Microsoft.Ink
Assembly:  Microsoft.Ink (in Microsoft.Ink.dll)

Syntax

'Declaration
Public ReadOnly Property PacketData As Integer()
'Usage
Dim instance As InkCollectorNewInAirPacketsEventArgs 
Dim value As Integer()

value = instance.PacketData
public int[] PacketData { get; }
public:
property array<int>^ PacketData {
    array<int>^ get ();
}
public function get PacketData () : int[]

Property Value

Type: array<System.Int32[]
An array that contains the selected data for the packet.

Remarks

To set which properties are contained in this array, use the DesiredPacketDescription property of the InkCollector object. The array that the PacketData property returns contains the data for those properties.

Note

Although you can modify the packet data, these modifications are not persisted or used.

For a complete list of all possible properties for which data can be included in the PacketData property, see the DesiredPacketDescription property of the InkCollector object.

Examples

In this example, an InkCollectorNewInAirPacketsEventHandler instance obtains the X and Y values of the last packet passed via the InkCollectorNewInAirPacketsEventArgs object. The X and Y values are always in the first two positions of the packet data.

Private Sub mInkObject_NewInAirPackets2(ByVal sender As Object, ByVal e As InkCollectorNewInAirPacketsEventArgs)
    Dim DescriptorsPerPacket As Integer = 0
    ' determine how many descriptors there are per packet 
    ' you could also obtain this value using: 
    '   e.PacketData.Length / e.PacketCount 
    ' but if you need to know which particular properties 
    ' are supported (beyond X and Y which are always placed first) 
    ' you will need to query e.Cursor.Tablet.IsPacketPropertySupported() 
    For Each G As Guid In mInkObject.DesiredPacketDescription
        If (e.Cursor.Tablet.IsPacketPropertySupported(G)) Then
            DescriptorsPerPacket += 1
        End If 
    Next 

    Dim LastX As Integer = e.PacketData(DescriptorsPerPacket * (e.PacketCount - 1))
    Dim LastY As Integer = e.PacketData((DescriptorsPerPacket * (e.PacketCount - 1)) + 1)
End Sub
private void mInkObject_NewInAirPackets2(object sender, InkCollectorNewInAirPacketsEventArgs e)
{
    int DescriptorsPerPacket = 0;
    // determine how many descriptors there are per packet 
    // you could also obtain this value using: 
    //   e.PacketData.Length / e.PacketCount 
    // but if you need to know which particular properties 
    // are supported (beyond X and Y which are always placed first) 
    // you will need to query e.Cursor.Tablet.IsPacketPropertySupported() 

    foreach (Guid G in mInkObject.DesiredPacketDescription)
    {
        if (e.Cursor.Tablet.IsPacketPropertySupported(G))
        {
            DescriptorsPerPacket++;
        }
    }

    int LastX = e.PacketData[DescriptorsPerPacket * (e.PacketCount - 1)];
    int LastY = e.PacketData[(DescriptorsPerPacket * (e.PacketCount - 1)) + 1];

}

Platforms

Windows 7, Windows Vista, Windows Server 2008 R2, Windows Server 2008

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Version Information

.NET Framework

Supported in: 3.0

See Also

Reference

InkCollectorNewInAirPacketsEventArgs Class

InkCollectorNewInAirPacketsEventArgs Members

Microsoft.Ink Namespace

InkCollector.NewInAirPackets

InkCollector.DesiredPacketDescription