ValueTypeIndexerReference<TOperand,TItem> 類別

定義

代表索引子在值型別參考的項目,可用來做為運算式中的左值 (l-value)。

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

類型參數

TOperand

具有該索引子的值型別。

TItem

索引子陣列的型別。

繼承
ValueTypeIndexerReference<TOperand,TItem>
屬性

範例

下列程式碼範例會在 ValueTypeIndexerReference<TOperand,TItem> 活動中使用 Assign,將 string 值指派至索引 1 的 struct 項目,並將項目值列印至主控台。 使用下列範例中定義的 Assign 時,struct 活動相當於下列陳述式:myStructVariable[1] = "Hello";

注意

強烈建議您呼叫 ValueTypeIndexerReference<TOperand,TItem>,而非直接具現化 ConvertReference 左值 (l-value) 運算式活動,因為前者可以提供層級較高的抽象概念,並讓您以更直覺的方式實作工作流程。

    // Define a struct with an indexer.  
    struct StructWithIndexer  
    {  
        string val;  
        public string this[int index]  
        {                  
            get { return val; }  
            set { val = value; }  
        }  
    }  

    public static void ValueTypeIndexerReferenceSample()  
    {  
        // Create a variable of type StructWithIndexer to store the element.  
        var swivar = new Variable<StructWithIndexer>("swivar", new StructWithIndexer());  

        // Create the top-level activity to be invoked later.  
        Activity myActivity = new Sequence  
        {  
            Variables = { swivar },  
            Activities =   
            {  
                // Create an Assign activity with an element at index 1.  
                new Assign<string>  
                {  
                    To = new ValueTypeIndexerReference<StructWithIndexer, string>  
                    {  
                        OperandLocation = swivar,  
                        Indices = { new InArgument<int>(1) },  
                    },  
                    // Assign a string literal to the element at index 1.  
                    Value = "Hello",  
                },  
                new WriteLine()  
                {  
                    Text = ExpressionServices.Convert<string>(ctx => swivar.Get(ctx)[1]),  
                }  
            }  
        };  

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

建構函式

ValueTypeIndexerReference<TOperand,TItem>()

初始化 ValueTypeIndexerReference<TOperand,TItem> 類別的新執行個體。

屬性

CacheId

取得工作流程定義範圍內的唯一快取識別碼。

(繼承來源 Activity)
Constraints

取得 Constraint 活動的集合,這些活動可以設定為提供 Activity 的驗證。

(繼承來源 Activity)
DisplayName

取得或設定選擇性的易記名稱,這個名稱會用於偵錯、驗證、例外狀況處理及追蹤。

(繼承來源 Activity)
Id

取得工作流程定義範圍內的唯一識別碼。

(繼承來源 Activity)
Implementation

不支援。

(繼承來源 CodeActivity<TResult>)
ImplementationVersion

取得或設定活動的實作版本。

(繼承來源 CodeActivity<TResult>)
Indices

取得引數集合,代表索引子陣列中項目的索引。

OperandLocation

取得或設定包含該索引子之值型別的執行個體。

Result

取得或設定 Activity<TResult> 的結果引數。

(繼承來源 Activity<TResult>)
ResultType

在衍生類別中實作時,取得活動 OutArgument 的型別。

(繼承來源 ActivityWithResult)

方法

CacheMetadata(ActivityMetadata)

未實作。 請改用 CacheMetadata(CodeActivityMetadata)

(繼承來源 CodeActivity<TResult>)
CacheMetadata(CodeActivityMetadata)

建立並驗證活動引數、變數、子活動和活動委派的描述。

(繼承來源 CodeActivity<TResult>)
Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
Execute(CodeActivityContext)

在衍生類別中實作時,執行活動的執行。

(繼承來源 CodeActivity<TResult>)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

建立動態更新的對應時引發事件。

(繼承來源 CodeActivity<TResult>)
ShouldSerializeDisplayName()

指出是否應序列化 DisplayName 屬性。

(繼承來源 Activity)
ToString()

傳回包含 的 和 的 。

(繼承來源 Activity)

適用於