SiteMapNodeCollection.IndexOf(SiteMapNode) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vyhledá zadaný SiteMapNode objekt a pak vrátí index prvního výskytu v celé kolekci založený na nule.
public:
virtual int IndexOf(System::Web::SiteMapNode ^ value);
public virtual int IndexOf (System.Web.SiteMapNode value);
abstract member IndexOf : System.Web.SiteMapNode -> int
override this.IndexOf : System.Web.SiteMapNode -> int
Public Overridable Function IndexOf (value As SiteMapNode) As Integer
Parametry
- value
- SiteMapNode
Chcete-li SiteMapNode najít v .SiteMapNodeCollection
Návraty
Nulový index prvního výskytu value
v rámci celého SiteMapNodeCollectionobjektu , pokud je nalezen; v opačném případě -1.
Příklady
Následující příklad kódu ukazuje, jak používat Contains metody SiteMapNodeCollection a IndexOf třídy. Kód zkontroluje dva zprostředkovatele AspNetXmlSiteMapProvider
a MyXmlSiteMapProvider
, pro podřízené uzly kořenového uzlu, které jsou duplicitní.
String providername1 = "AspNetXmlSiteMapProvider";
String providername2 = "MyXmlSiteMapProvider";
SiteMapProviderCollection providers = SiteMap.Providers;
if (providers[providername1] != null && providers[providername2] != null)
{
SiteMapProvider provider1 = providers[providername1];
SiteMapProvider provider2 = providers[providername2];
SiteMapNodeCollection collection1 = provider1.RootNode.ChildNodes;
SiteMapNodeCollection collection2 = provider2.RootNode.ChildNodes;
int matches = 0;
foreach (SiteMapNode node in collection1)
{
if (collection2.Contains(node))
{
Response.Write("Match found at " +
providername1 + ", index = " +
collection1.IndexOf(node) + " with " +
providername2 + ", index = " +
collection2.IndexOf(node) + ".<br />");
matches++;
}
}
Response.Write("Number of matches found = " +
matches.ToString() + ".");
}
else
{
Response.Write(providername1 + " or " +
providername2 + " not found.");
}
Dim providername1 As String = "xAspNetXmlSiteMapProvider"
Dim providername2 As String = "MyXmlSiteMapProvider"
Dim providers As SiteMapProviderCollection = SiteMap.Providers
If Not (providers(providername1) Is Nothing) AndAlso Not (providers(providername2) Is Nothing) Then
Dim provider1 As SiteMapProvider = providers(providername1)
Dim provider2 As SiteMapProvider = providers(providername2)
Dim collection1 As SiteMapNodeCollection = provider1.RootNode.ChildNodes
Dim collection2 As SiteMapNodeCollection = provider2.RootNode.ChildNodes
Dim matches As Integer = 0
Dim node As SiteMapNode
For Each node In collection1
If collection2.Contains(node) Then
Response.Write("Match found at " & _
providername1 & ", index = " & _
collection1.IndexOf(node) & " with " & _
providername2 & ", index = " & _
collection2.IndexOf(node) & ".<br />")
matches += 1
End If
Next node
Response.Write("Number of matches found = " & _
matches.ToString() + ".")
Else
Response.Write(providername1 & " or " & _
providername2 & " not found.")
End If
Poznámky
Metoda IndexOf určuje rovnost voláním Object.Equals metody.