GeneratorPosition Struct

Definition

GeneratorPosition is used to describe the position of an item that is managed by ItemContainerGenerator.

public value class GeneratorPosition
public struct GeneratorPosition
type GeneratorPosition = struct
Public Structure GeneratorPosition
Inheritance
GeneratorPosition

Examples

The following example illustrates how to use GeneratorPosition to start generating forward from the beginning of an item list.

// Start generating items forward from the beginning of the item list
GeneratorPosition position = new GeneratorPosition(-1, 0);
GeneratorDirection direction = GeneratorDirection.Forward;
IItemContainerGenerator generator = (IItemContainerGenerator)this.itemsControl.ItemContainerGenerator;
generator.StartAt(position, direction);
' Start generating items forward from the beginning of the item list
Dim position As New GeneratorPosition(-1, 0)
Dim direction As GeneratorDirection = GeneratorDirection.Forward
Dim generator As IItemContainerGenerator = CType(Me.itemsControl.ItemContainerGenerator, IItemContainerGenerator)
generator.StartAt(position, direction)

The following example illustrates how to use GeneratorPosition to start generating backward from the end of an item list.

// Start generating items backward from the end of the item list
GeneratorPosition position = new GeneratorPosition(-1, 0);
GeneratorDirection direction = GeneratorDirection.Backward;
IItemContainerGenerator generator = (IItemContainerGenerator)this.itemsControl.ItemContainerGenerator;
generator.StartAt(position, direction);
' Start generating items backward from the end of the item list
Dim position As New GeneratorPosition(-1, 0)
Dim direction As GeneratorDirection = GeneratorDirection.Backward
Dim generator As IItemContainerGenerator = CType(Me.itemsControl.ItemContainerGenerator, IItemContainerGenerator)
generator.StartAt(position, direction)

The following example illustrates how to use GeneratorPosition to start generating forward from the middle of an item list.

// Start generating items forward,
// starting with the first unrealized item (offset of 1),
// after the 5th realized item
// (the item with index 4 among all realized items) in the list
GeneratorPosition position = new GeneratorPosition(4, 1);
GeneratorDirection direction = GeneratorDirection.Forward;
IItemContainerGenerator generator = (IItemContainerGenerator)this.itemsControl.ItemContainerGenerator;
generator.StartAt(position, direction);
' Start generating items forward,
' starting with the first unrealized item (offset of 1),
' after the 5th realized item
' (the item with index 4 among all realized items) in the list
Dim position As New GeneratorPosition(4, 1)
Dim direction As GeneratorDirection = GeneratorDirection.Forward
Dim generator As IItemContainerGenerator = CType(Me.itemsControl.ItemContainerGenerator, IItemContainerGenerator)
generator.StartAt(position, direction)

Remarks

GeneratorPosition is used by StartAt.

Constructors

GeneratorPosition(Int32, Int32)

Initializes a new instance of GeneratorPosition with the specified index and offset.

Properties

Index

Gets or sets the Int32 index that is relative to the generated (realized) items.

Offset

Gets or sets the Int32 offset that is relative to the ungenerated (unrealized) items near the indexed item.

Methods

Equals(Object)

Compares the specified instance and the current instance of GeneratorPosition for value equality.

GetHashCode()

Returns the hash code for this GeneratorPosition.

ToString()

Returns a string representation of this instance of GeneratorPosition.

Operators

Equality(GeneratorPosition, GeneratorPosition)

Compares two GeneratorPosition objects for value equality.

Inequality(GeneratorPosition, GeneratorPosition)

Compares two GeneratorPosition objects for value inequality.

Applies to