Udostępnij za pośrednictwem


CatalogPartCollection.Contains(CatalogPart) Metoda

Definicja

Zwraca wartość wskazującą, czy określona kontrolka istnieje w kolekcji.

public:
 bool Contains(System::Web::UI::WebControls::WebParts::CatalogPart ^ catalogPart);
public bool Contains (System.Web.UI.WebControls.WebParts.CatalogPart catalogPart);
member this.Contains : System.Web.UI.WebControls.WebParts.CatalogPart -> bool
Public Function Contains (catalogPart As CatalogPart) As Boolean

Parametry

catalogPart
CatalogPart

Element CatalogPart sprawdzany w celu określenia, czy znajduje się w kolekcji.

Zwraca

Wartość logiczna wskazująca, czy określona kontrolka znajduje się w kolekcji.

Przykłady

Poniższy przykład kodu pokazuje, jak można określić, czy określona CatalogPart kontrolka jest elementem członkowskim CatalogPartCollection obiektu. Pełny kod wymagany do uruchomienia przykładu można znaleźć w sekcji Przykład w CatalogPartCollection temacie Omówienie klasy.

Kod w metodzie Button1_Click tworzy nowy CatalogPartCollection obiekt o nazwie myParts. Metoda używa Contains metody , aby określić, czy kontrolka PageCatalogPart1 istnieje, a jeśli tak, pobiera kontrolkę i zmienia wartość właściwości.

protected void Button1_Click(object sender, EventArgs e)
{
  ArrayList list = new ArrayList(2);
  list.Add(PageCatalogPart1);
  list.Add(DeclarativeCatalogPart1);
  // Pass an ICollection object to the constructor.
  CatalogPartCollection myParts = new CatalogPartCollection(list);
  foreach (CatalogPart catalog in myParts)
  {
    catalog.Description = "My " + catalog.DisplayTitle;
  }

  // Use the IndexOf property to locate a CatalogPart control.
  int PageCatalogPartIndex = myParts.IndexOf(PageCatalogPart1);
  myParts[PageCatalogPartIndex].ChromeType = PartChromeType.TitleOnly;

  // Use the Contains method to see if a CatalogPart control exists.
  if (myParts.Contains(PageCatalogPart1))
  {
    WebPart closedWebPart = null;
    WebPartDescriptionCollection descriptions = PageCatalogPart1.GetAvailableWebPartDescriptions();
    if (descriptions.Count > 0)
    {
      closedWebPart = PageCatalogPart1.GetWebPart(descriptions[0]);
      closedWebPart.AllowClose = false;
    }
  }
  
  // Use indexers to display the details of the CatalogPart controls.
  Label1.Text = String.Empty;
  Label1.Text =
    "<h3>PageCatalogPart Details</h3>" +
    "ID: " + myParts[0].ID + "<br />" +
    "Count: " + myParts[0].GetAvailableWebPartDescriptions().Count;
  Label1.Text += 
    "<h3>DeclarativeCatalogPart Details</h3>" +
    "ID: " + myParts["DeclarativeCatalogPart1"].ID + "<br />" +
    "Count: " + myParts["DeclarativeCatalogPart1"].GetAvailableWebPartDescriptions().Count;
}
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) 
    Dim list As New ArrayList(2)
    list.Add(PageCatalogPart1)
    list.Add(DeclarativeCatalogPart1)
    ' Pass an ICollection object to the constructor.
    Dim myParts As New CatalogPartCollection(list)
    Dim catalog As CatalogPart
    For Each catalog In  myParts
        catalog.Description = "My " + catalog.DisplayTitle
    Next catalog
    
    ' Use the IndexOf property to locate a CatalogPart control.
    Dim PageCatalogPartIndex As Integer = _
      myParts.IndexOf(PageCatalogPart1)
    myParts(PageCatalogPartIndex).ChromeType = PartChromeType.TitleOnly
    
    ' Use the Contains method to see if a CatalogPart control exists.
    If myParts.Contains(PageCatalogPart1) Then
        Dim closedWebPart As WebPart = Nothing
        Dim descriptions As WebPartDescriptionCollection = _
          PageCatalogPart1.GetAvailableWebPartDescriptions()
        If descriptions.Count > 0 Then
            closedWebPart = PageCatalogPart1.GetWebPart(descriptions(0))
            closedWebPart.AllowClose = False
        End If
    End If
    
    ' Use indexers to display the details of the CatalogPart controls.
    Label1.Text = String.Empty
    Label1.Text = _
      "<h3>PageCatalogPart Details</h3>" & _
      "ID: " & myParts(0).ID + "<br />" & _
      "Count: " & myParts(0).GetAvailableWebPartDescriptions().Count
    Label1.Text += _
      "<h3>DeclarativeCatalogPart Details</h3>" & _
      "ID: " & myParts("DeclarativeCatalogPart1").ID & "<br />" & _
      "Count: " & myParts("DeclarativeCatalogPart1") _
        .GetAvailableWebPartDescriptions().Count

End Sub 

Po załadowaniu strony w przeglądarce możesz przełączyć stronę do trybu wykazu, wybierając pozycję Wykaz w kontrolce listy rozwijanej Tryb wyświetlania . Dodaj kontrolkę niestandardową WebPart do strony, zaznaczając pole wyboru obok niej i klikając pozycję Dodaj. Kliknij przycisk Zamknij , aby powrócić do trybu przeglądania. Jeśli klikniesz menu czasowników (strzałka w dół wyświetlana na pasku tytułu), a następnie kliknij przycisk Zamknij, kontrolka zostanie usunięta ze strony i dodana do kontrolki PageCatalogPart . Wróć stronę do trybu wykazu, a następnie kliknij link Wykaz stron , aby wyświetlić zawartość kontrolki PageCatalogPart . Zwróć uwagę, że zamknięta kontrolka została dodana do niej. Kliknięcie przycisku Wyświetl właściwości elementu CatalogPart powoduje CatalogPartCollection uzyskanie dostępu do obiektu i wyświetlenie niektórych właściwości zawartych CatalogPart kontrolek. Zaznacz pole wyboru obok kontrolki serwera zawartej w kontrolce PageCatalogPart , kliknij przycisk Dodaj , aby dodać go z powrotem do strony, a następnie kliknij przycisk Zamknij , aby powrócić do trybu przeglądania strony. Kliknij ponownie menu czasowników w kontrolce i zwróć uwagę, że teraz czasownik zamknięcia zniknął. Został on usunięty przez kod w metodzie Button1_Click , gdy użyto Contains metody do sprawdzenia PageCatalogPart1, a następnie ustaw jej AllowClose właściwość na false.

Uwagi

Metoda Contains umożliwia określenie, czy określony CatalogPart obiekt jest częścią CatalogPartCollection obiektu.

Dotyczy

Zobacz też