擴充索引子屬性 (Visual Basic)

提供集合中個別項目的存取。

語法

object(index)  

組件

詞彙 定義
object 必要。 可查詢的集合。 也就是實作 IEnumerable<T>IQueryable<T> 的集合。
( 必要。 表示索引子屬性的開頭。
index 必要。 整數運算式,指定集合中元素以零起始的位置。
) 必要。 表示索引子屬性的結尾。

傳回值

集合中指定位置的物件;如果索引超出範圍,則為 Nothing

備註

您可以使用延伸模組索引子屬性來存取集合中的個別元素。 此索引子屬性通常會在 XML 軸屬性輸出時使用。 XML 子系和 XML 子系軸屬性會傳回 XElement 物件集合或一個屬性值。

Visual Basic 編譯器會將延伸模組索引子屬性轉換成 ElementAtOrDefault 方法的呼叫。 不同於陣列索引子,如果索引超出範圍,則 ElementAtOrDefault 方法會傳回 Nothing。 當您無法輕易判斷集合中的元素數目時,此行為會很有用。

此索引子屬性類似於實作 IEnumerable<T>IQueryable<T> 之集合的延伸模組屬性:只有在集合沒有索引子或預設屬性時才會使用。

若要存取 XElementXAttribute 物件集合中第一個元素的值,您可以使用 XML Value 屬性。 如需詳細資訊,請參閱 XML 值屬性

範例

下列範例示範如何使用延伸模組索引子來存取 XElement 物件集合中的第二個子節點。 此集合是透過使用子軸屬性來進行存取,該屬性會取得 contact 物件中名為 phone 的所有子元素。

Dim contact As XElement = 
    <contact>
        <name>Patrick Hines</name>
        <phone type="home">206-555-0144</phone>
        <phone type="work">425-555-0145</phone>
    </contact>

Console.WriteLine("Second phone number: " & contact.<phone>(1).Value)

此程式碼顯示下列文字:

Second phone number: 425-555-0145

另請參閱