다음을 통해 공유


CatalogPartCollection.IndexOf(CatalogPart) 메서드

정의

컬렉션의 특정 멤버 위치를 반환합니다.

public:
 int IndexOf(System::Web::UI::WebControls::WebParts::CatalogPart ^ catalogPart);
public int IndexOf (System.Web.UI.WebControls.WebParts.CatalogPart catalogPart);
member this.IndexOf : System.Web.UI.WebControls.WebParts.CatalogPart -> int
Public Function IndexOf (catalogPart As CatalogPart) As Integer

매개 변수

catalogPart
CatalogPart

컬렉션의 멤버인 CatalogPart입니다.

반환

CatalogPart의 멤버인 CatalogPartCollection입니다.

예제

다음 코드 예제를 사용 하 여 컬렉션의 멤버의 위치를 확인할 수 있는 CatalogPartCollection 방법을 보여 줍니다는 속성 IndexOf 입니다. 예제를 실행 하는 데 필요한 전체 코드의 예제 섹션을 참조 하세요.를 CatalogPartCollection 클래스 개요 항목입니다.

메서드의 Button1_Click 코드는 라는 myPartsCatalogPartCollection 개체를 만듭니다. 메서드를 사용 하 여는 IndexOf 속성을 컨트롤의 PageCatalogPart 위치를 검색 하 고 컨트롤의 속성 값을 변경 합니다.

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 

브라우저에서 페이지를 로드한 후 표시 모드 드롭다운 목록 컨트롤에서 카탈로그 를 선택하여 페이지를 카탈로그 모드 로 전환할 수 있습니다. CatalogPart 속성 표시 단추를 클릭하면 개체에 CatalogPartCollection 액세스하고 포함된 CatalogPart 컨트롤의 특정 속성이 표시됩니다. 페이지 카탈로그 링크를 클릭하여 컨트롤의 PageCatalogPart 내용을 표시합니다. 속성을 사용하여 IndexOf 컨트롤을 검색하는 코드에서 속성 값이 로 변경 TitleOnly 되었기 때문에 ChromeType 제목과 테두리만 있습니다.

설명

이 메서드는 IndexOf 웹 파트 페이지에 여러 CatalogPart 컨트롤이 있고 컬렉션에서 특정 컨트롤을 찾아야 하는 경우에 유용합니다.

적용 대상

추가 정보