Partilhar via


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 em uma atividade para atribuir um valor inteiro ao item de objeto no índice IndexerReference<TOperand,TItem> Assign [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; .

Observação

Em vez de criar uma instância da atividade de expressão l-value diretamente, é altamente recomendável que você chame , que fornece um nível mais alto de abstração e permite que você implemente seu fluxo de trabalho de forma IndexerReference<TOperand,TItem> ConvertReference 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

IndexerReference<TOperand,TItem>()

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

Propriedades

CacheId

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

(Herdado de Activity)
Constraints

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

(Herdado de Activity)
DisplayName

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

(Herdado de Activity)
Id

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

(Herdado de Activity)
Implementation

Não há 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 de indexadores.

Operand

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

Result

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

(Herdado de Activity<TResult>)
ResultType

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

(Herdado de ActivityWithResult)

Métodos

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, das variáveis, das atividades filho e dos representantes da atividade.

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

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Execute(CodeActivityContext)

Quando implementada em uma classe derivada, realiza 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 Object atual.

(Herdado de Object)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Gera um evento durante a criação de um mapa para a atualização dinâmica.

(Herdado de CodeActivity<TResult>)
ShouldSerializeDisplayName()

Indica se a propriedade DisplayName 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