Compartir vía


IndexerReference<TOperand,TItem> Clase

Definición

Representa un elemento al que hace referencia un indizador de objetos que se puede usar como un valor de l en una expresión.

generic <typename TOperand, typename TItem>
public ref class IndexerReference sealed : System::Activities::CodeActivity<System::Activities::Location<TItem> ^>
[System.Windows.Markup.ContentProperty("Indices")]
public sealed class IndexerReference<TOperand,TItem> : System.Activities.CodeActivity<System.Activities.Location<TItem>>
[<System.Windows.Markup.ContentProperty("Indices")>]
type IndexerReference<'Operand, 'Item> = class
    inherit CodeActivity<Location<'Item>>
Public NotInheritable Class IndexerReference(Of TOperand, TItem)
Inherits CodeActivity(Of Location(Of TItem))

Parámetros de tipo

TOperand

Tipo que tiene el indizador.

TItem

Tipo de la matriz del indizador.

Herencia
IndexerReference<TOperand,TItem>
Atributos

Ejemplos

El siguiente ejemplo de código utiliza IndexerReference<TOperand,TItem> en una actividad Assign para asignar un valor entero al elemento de objeto en el índice [1,2] e imprime el valor del elemento en la consola. La actividad Assign es equivalente a la siguiente instrucción cuando se utiliza un objeto que implementa un indizador. myObj[1,2] = 4; .

Nota:

En lugar de crear directamente instancias de la actividad de la expresión de valor de l IndexerReference<TOperand,TItem>, es muy recomendable llamar al método ConvertReference, que proporciona un nivel más alto de abstracción y permite implementar el flujo de trabajo más intuitivamente.

// Define a class with a multi-dimensional indexer.  
public class ObjectWithIndexer  
{  
    private int[,] array = new int[10,10];  
    public int this[int i, int j]  
    {  
        get { return array[i,j]; }  
        set { array[i,j] = value; }  
    }  
}  

public static void IndexerReferenceSample()  
{  
    // Create a variable of type ObjectWithIndexer to store the object item.  
    var oivar = new Variable<ObjectWithIndexer>("oivar", new ObjectWithIndexer());  

    Activity myActivity = new Sequence  
    {  
        Variables = { oivar },  
        Activities =   
        {                      
            // Create an Assign activity with a reference for the object at index [1,2].  
            new Assign<int>  
            {  
                To = new IndexerReference<ObjectWithIndexer, int>  
                {  
                    Operand = oivar,  
                    Indices =  
                    {  
                        new InArgument<int>(1),  
                        new InArgument<int>(2)  
                    }  
                },  
                // Assign an integer value to the object at index [1,2].  
                Value = 4,  
            },  
            // Print the new item value to the console.  
            new WriteLine()  
            {  
                Text = ExpressionServices.Convert<string>(ctx => oivar.Get(ctx)[1, 2].ToString()),  
            }  
        }  
    };  

    // Invoke the Sequence activity.  
    WorkflowInvoker.Invoke(myActivity);  
}  

Constructores

IndexerReference<TOperand,TItem>()

Inicializa una nueva instancia de la clase IndexerReference<TOperand,TItem>.

Propiedades

CacheId

Obtiene el identificador de la memoria caché que es único dentro del ámbito de definición del flujo de trabajo.

(Heredado de Activity)
Constraints

Obtiene una colección de las actividades Constraint que se puede configurar para proporcionar validación para Activity.

(Heredado de Activity)
DisplayName

Obtiene o establece un nombre descriptivo opcional que se utiliza para la depuración, la validación, el control de excepciones y el seguimiento.

(Heredado de Activity)
Id

Obtiene un identificador que es único dentro del ámbito de definición del flujo de trabajo.

(Heredado de Activity)
Implementation

No se admite.

(Heredado de CodeActivity<TResult>)
ImplementationVersion

Obtiene o establece la versión de implementación de la actividad.

(Heredado de CodeActivity<TResult>)
Indices

Obtiene una colección de argumentos que representan los índices del elemento en la matriz del indizador.

Operand

Obtiene o establece el objeto que contiene el indizador.

Result

Obtiene o establece el argumento de resultado de la Activity<TResult>.

(Heredado de Activity<TResult>)
ResultType

Cuando se implementa en una clase derivada, obtiene el tipo de argumento OutArgument de una actividad.

(Heredado de ActivityWithResult)

Métodos

CacheMetadata(ActivityMetadata)

Sin implementar. Utilice CacheMetadata(CodeActivityMetadata) en su lugar.

(Heredado de CodeActivity<TResult>)
CacheMetadata(CodeActivityMetadata)

Crea y valida una descripción de los argumentos, las variables, las actividades secundarias y delegados de la actividad.

(Heredado de CodeActivity<TResult>)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
Execute(CodeActivityContext)

Cuando se implementa en una clase derivada, realiza la ejecución de la actividad.

(Heredado de CodeActivity<TResult>)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Genera un evento al crear una asignación para la actualización dinámica.

(Heredado de CodeActivity<TResult>)
ShouldSerializeDisplayName()

Indica si la propiedad DisplayName se debe serializar.

(Heredado de Activity)
ToString()

Devuelve un objeto String que contiene las propiedades Id y DisplayName del objeto Activity.

(Heredado de Activity)

Se aplica a