Share via


IXRDoubleCollection (Compact 2013)

3/28/2014

This class represents a collection of float values.

Syntax

class IXRDoubleCollection : public IXRDependencyObject

Inheritance Hierarchy

IXRDependencyObject

    IXRDoubleCollection

Methods

Method

Description

IXRDoubleCollection::Add

Adds an item to the end of this collection and retrieves the index of where it was added.

IXRDoubleCollection::Clear

Removes all items from this collection.

IXRDoubleCollection::Contains

Determines whether an item is in this collection.

IXRDoubleCollection::GetCount

Retrieves the number of items in this collection.

IXRDoubleCollection::GetItem

Retrieves the item at the specified index in this collection.

IXRDoubleCollection::IndexOf

Searches for the specified item and retrieves the zero-based index of its first occurrence within this collection.

IXRDoubleCollection::Insert

Inserts an item into this collection at the location that has the specified index value.

IXRDoubleCollection::Remove

Removes the last occurrence of a specific item from this collection.

IXRDoubleCollection::RemoveAt

Removes the item at the specified index from this collection.

Thread Safety

Members of this class are thread safe if you previously called IXRApplication::CreateHostFromXaml and supplied it with an XRWindowCreateParams structure that has AllowsMultipleThreadAccess set to true. Allowing multiple-thread access can have a significant impact on application performance because this option serializes data for all objects in the collection across threads. If you have control over the lifetimes of these objects it is recommended that you serialize only what is needed to achieve optimal performance.

Remarks

You can use this collection class together with the methods IXRShape::GetStrokeDashArray and IXRShape::SetStrokeDashArray to manipulate a set of dashes that outline a shape object.

You can also create a new collection. To do this, use the IXRApplication::CreateObject(IID,Object) method to create an empty IXRDoubleCollection object. Then, you can use CreateObject to create multiple float values that indicate the pattern of dashes and gaps used to outline a shape object. Next, you can add each float value to the IXRDoubleCollection collection by calling the IXRDoubleCollection::Add method. And finally, you can set the new collection for an IXRShape by calling IXRShape::SetStrokeDashArray.

You can obtain a pointer to this collection by calling IXRShape::GetStrokeDashArray. Then, you can use the methods of this class to add, remove, or retrieve items. You can also clear the complete collection by calling the IXRDoubleCollection::Clear method.

When you create a class instance, use an IXRDoubleCollectionPtr smart pointer instead of a raw interface pointer. For more information, see XRPtr<Interface>.

You can also define a double collection in Microsoft Silverlight 3 XAML. For information about the differences between XAML in XAML for Windows Embedded and Silverlight 3, see Differences Between Microsoft Silverlight 3 and XAML for Windows Embedded. For more information about how to define this collection in the source XAML for your application, see the DoubleCollection Class on MSDN.

Note

This programming element includes "Double" in its name to maintain parity with the name of its equivalent XAML element in the source XAML markup. The name of this XAML element is generated by the Blend for Visual Studio IDE. However, in XAML for Windows Embedded, this object represents a float instead of a double.

.NET Framework Equivalent

System.Windows.Media.DoubleCollection

Requirements

Header

XamlRuntime.h

sysgen

SYSGEN_XAML_RUNTIME

See Also

Reference

Classes for Collection Management
IXRShape::SetStrokeDashArray
IXRShape::GetStrokeDashArray