다음을 통해 공유


ListView.View 속성

컨트롤에서 항목의 표시 방법을 가져오거나 설정합니다.

네임스페이스: System.Windows.Forms
어셈블리: System.Windows.Forms(system.windows.forms.dll)

구문

‘선언
Public Property View As View
‘사용 방법
Dim instance As ListView
Dim value As View

value = instance.View

instance.View = value
public View View { get; set; }
public:
property View View {
    View get ();
    void set (View value);
}
/** @property */
public View get_View ()

/** @property */
public void set_View (View value)
public function get View () : View

public function set View (value : View)

속성 값

View 값 중 하나입니다. 기본값은 LargeIcon입니다.

예외

예외 형식 조건

InvalidEnumArgumentException

지정된 값이 View 값 중 하나가 아닌 경우

설명

View 속성을 사용하면 ListView 컨트롤이 항목을 표시하기 위해 사용하는 표시 형식을 지정할 수 있습니다. View 속성을 설정하여 큰 아이콘 또는 작은 아이콘으로 각 항목을 표시하거나 세로 목록으로 항목을 표시할 수 있습니다. 자세히 보기에는 항목과 각 항목에 대해 지정된 하위 항목이 표시됩니다. 각 항목은 모눈에 세로 목록으로 표시되며 각 항목에 대한 하위 항목은 열 머리글이 있는 열에 표시됩니다. 자세히 보기는 데이터베이스 정보를 사용자에게 완벽하게 표시합니다. Windows XP와 Windows Server 2003에서는 선택한 하위 항목 정보와 함께 큰 아이콘을 표시하여 그래픽 정보와 텍스트 정보의 균형을 맞추는 바둑판으로 항목을 표시할 수도 있습니다. Tile 보기를 사용하려면 응용 프로그램에서 Application.EnableVisualStyles 메서드를 호출해야 합니다. 작은 이미지 보기에서는 아이콘과 그 오른쪽에 텍스트 정보를 표시하여 각 항목을 나타냅니다. 큰 이미지 보기에서는 아이콘과 그 아래에 텍스트 정보를 표시하여 각 항목을 나타냅니다. 이미지 목록의 아이콘 크기는 SmallImageList 또는 LargeImageList 속성에 대한 ImageListImageSize 속성에서 지정됩니다.

ListView 컨트롤의 대부분의 속성은 다른 보기의 동작이나 표시 방법에 영향을 줍니다. 항목 보기에 영향을 주는 일부 속성은 View 속성이 특정 값으로 설정된 경우에만 유용합니다. 다른 속성은 모든 보기에서 유용합니다. 예를 들어, GridLinesFullRowSelect와 같은 속성은 View 속성이 View.Details로 설정된 경우에만 유용하며 MultiSelectCheckBoxes 속성은 모든 보기에서 유용합니다.

다음 표에서는 일부 ListView 멤버와 해당 멤버에 유효한 보기를 보여 줍니다.

ListView 멤버

보기

Alignment 속성

SmallIcon 또는 LargeIcon

AutoArrange 속성

SmallIcon 또는 LargeIcon

AutoResizeColumn 메서드

Details

CheckBoxes

Tile을 제외한 모든 보기

Columns 속성

Details 또는 Tile

DrawSubItem 이벤트

Details

FindItemWithText 메서드

Details, List 또는 Tile

FindNearestItem 메서드

SmallIcon 또는 LargeIcon

GetItemAt 메서드

Details 또는 Tile

Groups 속성

List를 제외한 모든 보기

HeaderStyle 속성

Details

InsertionMark 속성

LargeIcon, SmallIcon 또는 Tile

View 속성을 사용하면 응용 프로그램에서 데이터를 다른 보기에 표시할 수 있거나 특정 보기를 잠궈 그 보기의 이점을 활용할 수 있습니다. 예를 들어, View 속성은 대개 View.Details로 설정되는데 이는 자세히 보기에서는 다른 보기에서 사용할 수 없는 많은 보기 옵션을 제공하기 때문입니다.

참고

ListView 컨트롤에 지정된 열 머리글이 없고 View 속성을 View.Details로 설정했으면 ListView 컨트롤에는 항목이 표시되지 않습니다. ListView 컨트롤에 지정된 열 머리글이 없고 View 속성을 View.Tile로 설정했으면 ListView 컨트롤에는 하위 항목이 표시되지 않습니다.

Tile 보기에서는 왼쪽에 큰 아이콘이 표시되고 오른쪽에 텍스트 정보가 표시되어 각 항목이 나타납니다. 텍스트 정보는 항목 레이블과 그 뒤에 추가된 하위 항목으로 구성되어 있습니다. 기본적으로 항목 레이블에 해당하는 첫 번째 하위 항목만 표시됩니다. 추가 하위 항목을 표시하려면 ColumnHeader 개체를 Columns 컬렉션에 추가해야 합니다. 바둑판의 각 하위 하목은 열 머리글에 해당합니다. 표시되는 하위 항목과 그 순서를 제어하려면 각 항목에 대해 ListViewItem.ListViewSubItem.Name 속성을 설정하고 각 머리글에 대해 ColumnHeader.Name 속성을 설정해야 합니다. 그런 다음 Columns 컬렉션에서 머리글을 추가하고 제거하고 다시 정렬하여 원하는 결과를 얻을 수 있습니다.

Tile 보기에서 바둑판 크기를 제어하려면 TileSize 속성을 설정합니다. 이것은 하위 항목 텍스트가 한 줄에 표시되기에 너무 긴 경우 줄 바꿈을 방지하는 데 유용합니다.

Tile 보기에 대한 예제를 보려면 TileSize 속성을 참조하십시오.

참고

열이 자세히 보기에만 표시되지만 열 머리글이 없는 하위 항목은 자세히 보기나 Tile 보기에 표시되지 않습니다.

Tile 보기는 응용 프로그램에서 Application.EnableVisualStyles 메서드를 호출할 때 Windows XP와 Windows Server 2003에서만 사용할 수 있습니다. 이전 버전의 운영 체제에서는 Tile 보기와 관련된 모든 코드가 적용되지 않으며 ListView 컨트롤이 큰 아이콘 보기에 표시됩니다. 따라서 Tile 보기에 의존하는 모든 코드가 제대로 작동하지 않을 수 있습니다.

Tile 보기를 사용할 수 있는지 여부를 확인하는 코드를 포함시키고 사용할 수 없으면 대체 기능을 제공할 수도 있습니다. 예를 들어, 소유자 그리기를 사용하여 Tile 보기에서 ListView의 모양을 사용자 지정하는 경우 Tile 보기를 지원하지 않는 운영 체제에서 실행될 때 큰 아이콘 보기에 적절한 그리기 코드를 사용할 수 있습니다.

Tile 보기 기능은 운영 체제 테마 기능을 제공하는 라이브러리에서 제공됩니다. 이 라이브러리를 사용할 수 있는지 확인하려면 FeatureSupport.IsPresent(Object) 메서드 오버로드를 호출하고 OSFeature.Themes 값을 전달합니다.

예제

다음 코드 예제에서는 각 항목에 대해 세 개의 ListViewItem 개체 및 세 개의 ListViewItem.ListViewSubItem 개체가 지정되어 있는 ListView 컨트롤을 만듭니다. 이 예제에서는 자세히 보기에 하위 항목도 표시하는 ColumnHeader 개체도 만듭니다. ImageList 개체도 코드 예제에 만들어져 ListViewItem 개체에 이미지를 제공합니다. 이런 ImageList 개체는 LargeImageListSmallImageList 속성에 추가됩니다. 이 예제에서는 다음과 같은 속성을 사용하여 ListView 컨트롤을 만듭니다.

이 예제를 실행하려면 코드를 Form에 추가하고 폼의 생성자나 다른 메서드로부터 예제에서 만든 메서드를 호출한 상태여야 합니다. 또한 MySmallImage1, MySmallImage2, MyLargeImage1MyLargeImage2라는 이미지가 C 드라이브의 루트 디렉터리에 있어야 합니다.

Private Sub CreateMyListView()
    ' Create a new ListView control.
    Dim listView1 As New ListView()
    listView1.Bounds = New Rectangle(New Point(10, 10), New Size(300, 200))

    ' Set the view to show details.
    listView1.View = View.Details
    ' Allow the user to edit item text.
    listView1.LabelEdit = True
    ' Allow the user to rearrange columns.
    listView1.AllowColumnReorder = True
    ' Display check boxes.
    listView1.CheckBoxes = True
    ' Select the item and subitems when selection is made.
    listView1.FullRowSelect = True
    ' Display grid lines.
    listView1.GridLines = True
    ' Sort the items in the list in ascending order.
    listView1.Sorting = SortOrder.Ascending

    ' Create three items and three sets of subitems for each item.
    Dim item1 As New ListViewItem("item1", 0)
    ' Place a check mark next to the item.
    item1.Checked = True
    item1.SubItems.Add("1")
    item1.SubItems.Add("2")
    item1.SubItems.Add("3")
    Dim item2 As New ListViewItem("item2", 1)
    item2.SubItems.Add("4")
    item2.SubItems.Add("5")
    item2.SubItems.Add("6")
    Dim item3 As New ListViewItem("item3", 0)
    ' Place a check mark next to the item.
    item3.Checked = True
    item3.SubItems.Add("7")
    item3.SubItems.Add("8")
    item3.SubItems.Add("9")

    ' Create columns for the items and subitems.
    listView1.Columns.Add("Item Column", -2, HorizontalAlignment.Left)
    listView1.Columns.Add("Column 2", -2, HorizontalAlignment.Left)
    listView1.Columns.Add("Column 3", -2, HorizontalAlignment.Left)
    listView1.Columns.Add("Column 4", -2, HorizontalAlignment.Center)

    'Add the items to the ListView.
    listView1.Items.AddRange(New ListViewItem() {item1, item2, item3})

    ' Create two ImageList objects.
    Dim imageListSmall As New ImageList()
    Dim imageListLarge As New ImageList()

    ' Initialize the ImageList objects with bitmaps.
    imageListSmall.Images.Add(Bitmap.FromFile("C:\MySmallImage1.bmp"))
    imageListSmall.Images.Add(Bitmap.FromFile("C:\MySmallImage2.bmp"))
    imageListLarge.Images.Add(Bitmap.FromFile("C:\MyLargeImage1.bmp"))
    imageListLarge.Images.Add(Bitmap.FromFile("C:\MyLargeImage2.bmp"))

    'Assign the ImageList objects to the ListView.
    listView1.LargeImageList = imageListLarge
    listView1.SmallImageList = imageListSmall

    ' Add the ListView to the control collection.
    Me.Controls.Add(listView1)
End Sub 'CreateMyListView
private void CreateMyListView()
{
    // Create a new ListView control.
    ListView listView1 = new ListView();
    listView1.Bounds = new Rectangle(new Point(10,10), new Size(300,200));

    // Set the view to show details.
    listView1.View = View.Details;
    // Allow the user to edit item text.
    listView1.LabelEdit = true;
    // Allow the user to rearrange columns.
    listView1.AllowColumnReorder = true;
    // Display check boxes.
    listView1.CheckBoxes = true;
    // Select the item and subitems when selection is made.
    listView1.FullRowSelect = true;
    // Display grid lines.
    listView1.GridLines = true;
    // Sort the items in the list in ascending order.
    listView1.Sorting = SortOrder.Ascending;
                
    // Create three items and three sets of subitems for each item.
    ListViewItem item1 = new ListViewItem("item1",0);
    // Place a check mark next to the item.
    item1.Checked = true;
    item1.SubItems.Add("1");
    item1.SubItems.Add("2");
    item1.SubItems.Add("3");
    ListViewItem item2 = new ListViewItem("item2",1);
    item2.SubItems.Add("4");
    item2.SubItems.Add("5");
    item2.SubItems.Add("6");
    ListViewItem item3 = new ListViewItem("item3",0);
    // Place a check mark next to the item.
    item3.Checked = true;
    item3.SubItems.Add("7");
    item3.SubItems.Add("8");
    item3.SubItems.Add("9");

    // Create columns for the items and subitems.
    listView1.Columns.Add("Item Column", -2, HorizontalAlignment.Left);
    listView1.Columns.Add("Column 2", -2, HorizontalAlignment.Left);
    listView1.Columns.Add("Column 3", -2, HorizontalAlignment.Left);
    listView1.Columns.Add("Column 4", -2, HorizontalAlignment.Center);

    //Add the items to the ListView.
            listView1.Items.AddRange(new ListViewItem[]{item1,item2,item3});

    // Create two ImageList objects.
    ImageList imageListSmall = new ImageList();
    ImageList imageListLarge = new ImageList();

    // Initialize the ImageList objects with bitmaps.
    imageListSmall.Images.Add(Bitmap.FromFile("C:\\MySmallImage1.bmp"));
    imageListSmall.Images.Add(Bitmap.FromFile("C:\\MySmallImage2.bmp"));
    imageListLarge.Images.Add(Bitmap.FromFile("C:\\MyLargeImage1.bmp"));
    imageListLarge.Images.Add(Bitmap.FromFile("C:\\MyLargeImage2.bmp"));

    //Assign the ImageList objects to the ListView.
    listView1.LargeImageList = imageListLarge;
    listView1.SmallImageList = imageListSmall;

    // Add the ListView to the control collection.
    this.Controls.Add(listView1);
}
private:
   void CreateMyListView()
   {
      // Create a new ListView control.
      ListView^ listView1 = gcnew ListView;
      listView1->Bounds = Rectangle(Point(10,10),System::Drawing::Size( 300, 200 ));

      // Set the view to show details.
      listView1->View = View::Details;

      // Allow the user to edit item text.
      listView1->LabelEdit = true;

      // Allow the user to rearrange columns.
      listView1->AllowColumnReorder = true;

      // Display check boxes.
      listView1->CheckBoxes = true;

      // Select the item and subitems when selection is made.
      listView1->FullRowSelect = true;

      // Display grid lines.
      listView1->GridLines = true;

      // Sort the items in the list in ascending order.
      listView1->Sorting = SortOrder::Ascending;

      // Create three items and three sets of subitems for each item.
      ListViewItem^ item1 = gcnew ListViewItem( "item1",0 );

      // Place a check mark next to the item.
      item1->Checked = true;
      item1->SubItems->Add( "1" );
      item1->SubItems->Add( "2" );
      item1->SubItems->Add( "3" );
      ListViewItem^ item2 = gcnew ListViewItem( "item2",1 );
      item2->SubItems->Add( "4" );
      item2->SubItems->Add( "5" );
      item2->SubItems->Add( "6" );
      ListViewItem^ item3 = gcnew ListViewItem( "item3",0 );

      // Place a check mark next to the item.
      item3->Checked = true;
      item3->SubItems->Add( "7" );
      item3->SubItems->Add( "8" );
      item3->SubItems->Add( "9" );

      // Create columns for the items and subitems.
      listView1->Columns->Add( "Item Column", -2, HorizontalAlignment::Left );
      listView1->Columns->Add( "Column 2", -2, HorizontalAlignment::Left );
      listView1->Columns->Add( "Column 3", -2, HorizontalAlignment::Left );
      listView1->Columns->Add( "Column 4", -2, HorizontalAlignment::Center );

      //Add the items to the ListView.
      array<ListViewItem^>^temp1 = {item1,item2,item3};
      listView1->Items->AddRange( temp1 );

      // Create two ImageList objects.
      ImageList^ imageListSmall = gcnew ImageList;
      ImageList^ imageListLarge = gcnew ImageList;

      // Initialize the ImageList objects with bitmaps.
      imageListSmall->Images->Add( Bitmap::FromFile( "C:\\MySmallImage1.bmp" ) );
      imageListSmall->Images->Add( Bitmap::FromFile( "C:\\MySmallImage2.bmp" ) );
      imageListLarge->Images->Add( Bitmap::FromFile( "C:\\MyLargeImage1.bmp" ) );
      imageListLarge->Images->Add( Bitmap::FromFile( "C:\\MyLargeImage2.bmp" ) );

      //Assign the ImageList objects to the ListView.
      listView1->LargeImageList = imageListLarge;
      listView1->SmallImageList = imageListSmall;
      
      // Add the ListView to the control collection.
      this->Controls->Add( listView1 );
   }
private void CreateMyListView()
{
    // Create a new ListView control.
    ListView listView1 = new ListView();
    listView1.set_Bounds(new Rectangle(new Point(10, 10), 
        new Size(300, 200)));

    // Set the view to show details.
    listView1.set_View(View.Details);

    // Allow the user to edit item text.
    listView1.set_LabelEdit(true);

    // Allow the user to rearrange columns.
    listView1.set_AllowColumnReorder(true);

    // Display check boxes.
    listView1.set_CheckBoxes(true);

    // Select the item and subitems when selection is made.
    listView1.set_FullRowSelect(true);

    // Display grid lines.
    listView1.set_GridLines(true);

    // Sort the items in the list in ascending order.
    listView1.set_Sorting(SortOrder.Ascending);

    // Create three items and three sets of subitems for each item.
    ListViewItem item1 = new ListViewItem("item1", 0);

    // Place a check mark next to the item.
    item1.set_Checked(true);

    item1.get_SubItems().Add("1");
    item1.get_SubItems().Add("2");
    item1.get_SubItems().Add("3");

    ListViewItem item2 = new ListViewItem("item2", 1);
    item2.get_SubItems().Add("4");
    item2.get_SubItems().Add("5");
    item2.get_SubItems().Add("6");

    ListViewItem item3 = new ListViewItem("item3", 0);

    // Place a check mark next to the item.
    item3.set_Checked(true);

    item3.get_SubItems().Add("7");
    item3.get_SubItems().Add("8");
    item3.get_SubItems().Add("9");

    // Create columns for the items and subitems.
    listView1.get_Columns().Add("Item Column", -2, 
        HorizontalAlignment.Left);
    listView1.get_Columns().Add("Column 2", -2, HorizontalAlignment.Left);
    listView1.get_Columns().Add("Column 3", -2, HorizontalAlignment.Left);
    listView1.get_Columns().Add("Column 4", -2, HorizontalAlignment.Center);

    //Add the items to the ListView.
    listView1.get_Items().AddRange(new ListViewItem[] { item1, item2, 
        item3 });

    // Create two ImageList objects.
    ImageList imageListSmall = new ImageList();
    ImageList imageListLarge = new ImageList();

    // Initialize the ImageList objects with bitmaps.
    imageListSmall.get_Images().Add(Bitmap.FromFile(
        "C:\\MySmallImage1.bmp"));
    imageListSmall.get_Images().Add(Bitmap.FromFile(
        "C:\\MySmallImage2.bmp"));
    imageListLarge.get_Images().Add(Bitmap.FromFile(
        "C:\\MyLargeImage1.bmp"));
    imageListLarge.get_Images().Add(Bitmap.FromFile(
        "C:\\MyLargeImage2.bmp"));

    //Assign the ImageList objects to the ListView.
    listView1.set_LargeImageList(imageListLarge);
    listView1.set_SmallImageList(imageListSmall);

    // Add the ListView to the control collection.
    this.get_Controls().Add(listView1);
} //CreateMyListView

플랫폼

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

참고 항목

참조

ListView 클래스
ListView 멤버
System.Windows.Forms 네임스페이스
View
ListView.TileSize 속성
Application.EnableVisualStyles