IndexerReference<TOperand,TItem> Classe

Definição

Representa um elemento referenciado por um indexador de objeto que pode ser usado como um l-value em uma expressão.

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

O tipo com o indexador.

TItem

O tipo da matriz do indexador.

Herança
IndexerReference<TOperand,TItem>
Atributos

Exemplos

O exemplo de código a seguir usa IndexerReference<TOperand,TItem> em uma Assign atividade para atribuir um valor inteiro ao item de objeto no índice [1,2] e imprime o valor do item no console. A Assign atividade é equivalente à instrução a seguir ao usar um objeto que implementa um indexador. myObj[1,2] = 4; .

Note

Em vez de instanciar diretamente a IndexerReference<TOperand,TItem> atividade de expressão l-value, é altamente recomendável que você chame ConvertReference, o que fornece um nível mais alto de abstração e permite que você implemente seu fluxo de trabalho de forma mais intuitiva.

// 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);
}

Construtores

Nome Description
IndexerReference<TOperand,TItem>()

Inicializa uma nova instância da classe IndexerReference<TOperand,TItem>.

Propriedades

Nome Description
CacheId

Obtém o identificador do cache que é exclusivo dentro do escopo da definição do fluxo de trabalho.

(Herdado de Activity)
Constraints

Obtém uma coleção de Constraint atividades que podem ser configuradas para fornecer validação para o Activity.

(Herdado de Activity)
DisplayName

Obtém ou define um nome amigável opcional que é usado para depuração, validação, tratamento de exceção e acompanhamento.

(Herdado de Activity)
Id

Obtém um identificador exclusivo no escopo da definição de fluxo de trabalho.

(Herdado de Activity)
Implementation

Sem suporte.

(Herdado de CodeActivity<TResult>)
ImplementationVersion

Obtém ou define a versão de implementação da atividade.

(Herdado de CodeActivity<TResult>)
Indices

Obtém uma coleção de argumentos que representam os índices do elemento na matriz do indexador.

Operand

Obtém ou define o objeto que contém o indexador.

Result

Obtém ou define o argumento de resultado para o Activity<TResult>.

(Herdado de Activity<TResult>)
ResultType

Quando implementado em uma classe derivada, obtém o tipo de uma atividade OutArgument.

(Herdado de ActivityWithResult)

Métodos

Nome Description
CacheMetadata(ActivityMetadata)

Não implementado. Use CacheMetadata(CodeActivityMetadata) em seu lugar.

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

Cria e valida uma descrição dos argumentos, variáveis, atividades filho e delegados de atividades da atividade.

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

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Execute(CodeActivityContext)

Quando implementado em uma classe derivada, executa a execução da atividade.

(Herdado de CodeActivity<TResult>)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Gera um evento ao criar um mapa para a atualização dinâmica.

(Herdado de CodeActivity<TResult>)
ShouldSerializeDisplayName()

Indica se a DisplayName propriedade deve ser serializada.

(Herdado de Activity)
ToString()

Retorna um String que contém o Id e DisplayName do Activity.

(Herdado de Activity)

Aplica-se a