TreeView.ImageIndex 속성
트리 노드에 표시되는 기본 이미지의 이미지 목록 인덱스 값을 가져오거나 설정합니다.
네임스페이스: System.Windows.Forms
어셈블리: System.Windows.Forms(system.windows.forms.dll)
구문
‘선언
<LocalizableAttribute(True)> _
Public Property ImageIndex As Integer
‘사용 방법
Dim instance As TreeView
Dim value As Integer
value = instance.ImageIndex
instance.ImageIndex = value
[LocalizableAttribute(true)]
public int ImageIndex { get; set; }
[LocalizableAttribute(true)]
public:
property int ImageIndex {
int get ();
void set (int value);
}
/** @property */
public int get_ImageIndex ()
/** @property */
public void set_ImageIndex (int value)
public function get ImageIndex () : int
public function set ImageIndex (value : int)
속성 값
0부터 시작하는 인덱스로, ImageList에서 Image의 위치를 나타냅니다. 기본값은 0입니다.
예외
예외 형식 | 조건 |
---|---|
지정된 인덱스가 0보다 작은 경우 |
설명
ImageIndex 값은 ImageList 속성에 할당된 ImageList에 저장되어 있는 Image의 인덱스입니다.
ImageKey 및 ImageIndex 속성은 동시에 사용할 수 없으므로 한 속성을 설정하면 다른 속성은 무시됩니다. ImageKey를 설정하면 ImageIndex가 자동으로 -1로 설정되고, ImageIndex를 설정하면 ImageKey가 자동으로 빈 문자열("")로 설정됩니다.
참고
런타임에 ImageIndex 속성을 설정하면 컨트롤의 모양을 업데이트하도록 TreeView 핸들이 다시 만들어집니다(Control.RecreateHandle 참조). 이 경우 선택된 TreeNode를 제외하고 모든 트리 노드가 축소됩니다.
예제
다음 코드 예제에서는 ImageList를 만들어 TreeView 컨트롤에 할당하고 TreeView 컨트롤에 TreeNode 개체를 채웁니다. 선택된 상태이거나 선택 취소된 상태일 때 표시되는 이미지가 ImageList에서 트리 노드에 할당되었습니다. 이 예제를 실행하려면 TreeView를 포함하는 Form과 Order
개체가 각각 들어 있는 Customer
개체를 포함하는 ArrayList가 있어야 합니다. 또한 Customer
및 Order
개체가 정의된 것으로 가정합니다.
Private Sub FillTreeView()
' Load the images in an ImageList.
Dim myImageList As New ImageList()
myImageList.Images.Add(Image.FromFile("Default.gif"))
myImageList.Images.Add(Image.FromFile("SelectedDefault.gif"))
myImageList.Images.Add(Image.FromFile("Root.gif"))
myImageList.Images.Add(Image.FromFile("UnselectedCustomer.gif"))
myImageList.Images.Add(Image.FromFile("SelectedCustomer.gif"))
myImageList.Images.Add(Image.FromFile("UnselectedOrder.gif"))
myImageList.Images.Add(Image.FromFile("SelectedOrder.gif"))
' Assign the ImageList to the TreeView.
myTreeView.ImageList = myImageList
' Set the TreeView control's default image and selected image indexes.
myTreeView.ImageIndex = 0
myTreeView.SelectedImageIndex = 1
' Set the index of image from the
' ImageList for selected and unselected tree nodes.
Me.rootImageIndex = 2
Me.selectedCustomerImageIndex = 3
Me.unselectedCustomerImageIndex = 4
Me.selectedOrderImageIndex = 5
Me.unselectedOrderImageIndex = 6
' Create the root tree node.
Dim rootNode As New TreeNode("CustomerList")
rootNode.ImageIndex = rootImageIndex
rootNode.SelectedImageIndex = rootImageIndex
' Add a main root tree node.
myTreeView.Nodes.Add(rootNode)
' Add a root tree node for each Customer object in the ArrayList.
Dim myCustomer As Customer
For Each myCustomer In customerArray
' Add a child tree node for each Order object.
Dim countIndex As Integer = 0
Dim myTreeNodeArray(myCustomer.CustomerOrders.Count) As TreeNode
Dim myOrder As Order
For Each myOrder In myCustomer.CustomerOrders
' Add the Order tree node to the array.
myTreeNodeArray(countIndex) = New TreeNode(myOrder.OrderID, _
unselectedOrderImageIndex, selectedOrderImageIndex)
countIndex += 1
Next myOrder
' Add the Customer tree node.
Dim customerNode As New TreeNode(myCustomer.CustomerName, _
unselectedCustomerImageIndex, selectedCustomerImageIndex, myTreeNodeArray)
myTreeView.Nodes(0).Nodes.Add(customerNode)
Next myCustomer
End Sub
private void FillTreeView()
{
// Load the images in an ImageList.
ImageList myImageList = new ImageList();
myImageList.Images.Add(Image.FromFile("Default.gif"));
myImageList.Images.Add(Image.FromFile("SelectedDefault.gif"));
myImageList.Images.Add(Image.FromFile("Root.gif"));
myImageList.Images.Add(Image.FromFile("UnselectedCustomer.gif"));
myImageList.Images.Add(Image.FromFile("SelectedCustomer.gif"));
myImageList.Images.Add(Image.FromFile("UnselectedOrder.gif"));
myImageList.Images.Add(Image.FromFile("SelectedOrder.gif"));
// Assign the ImageList to the TreeView.
myTreeView.ImageList = myImageList;
// Set the TreeView control's default image and selected image indexes.
myTreeView.ImageIndex = 0;
myTreeView.SelectedImageIndex = 1;
/* Set the index of image from the
ImageList for selected and unselected tree nodes.*/
this.rootImageIndex = 2;
this.selectedCustomerImageIndex = 3;
this.unselectedCustomerImageIndex = 4;
this.selectedOrderImageIndex = 5;
this.unselectedOrderImageIndex = 6;
// Create the root tree node.
TreeNode rootNode = new TreeNode("CustomerList");
rootNode.ImageIndex = rootImageIndex;
rootNode.SelectedImageIndex = rootImageIndex;
// Add a main root tree node.
myTreeView.Nodes.Add(rootNode);
// Add a root tree node for each Customer object in the ArrayList.
foreach(Customer myCustomer in customerArray)
{
// Add a child tree node for each Order object.
int countIndex=0;
TreeNode[] myTreeNodeArray = new TreeNode[myCustomer.CustomerOrders.Count];
foreach(Order myOrder in myCustomer.CustomerOrders)
{
// Add the Order tree node to the array.
myTreeNodeArray[countIndex] = new TreeNode(myOrder.OrderID,
unselectedOrderImageIndex, selectedOrderImageIndex);
countIndex++;
}
// Add the Customer tree node.
TreeNode customerNode = new TreeNode(myCustomer.CustomerName,
unselectedCustomerImageIndex, selectedCustomerImageIndex, myTreeNodeArray);
myTreeView.Nodes[0].Nodes.Add(customerNode);
}
}
void FillTreeView()
{
// Load the images in an ImageList.
ImageList^ myImageList = gcnew ImageList;
myImageList->Images->Add( Image::FromFile( "Default.gif" ) );
myImageList->Images->Add( Image::FromFile( "SelectedDefault.gif" ) );
myImageList->Images->Add( Image::FromFile( "Root.gif" ) );
myImageList->Images->Add( Image::FromFile( "UnselectedCustomer.gif" ) );
myImageList->Images->Add( Image::FromFile( "SelectedCustomer.gif" ) );
myImageList->Images->Add( Image::FromFile( "UnselectedOrder.gif" ) );
myImageList->Images->Add( Image::FromFile( "SelectedOrder.gif" ) );
// Assign the ImageList to the TreeView.
myTreeView->ImageList = myImageList;
// Set the TreeView control's default image and selected image indexes.
myTreeView->ImageIndex = 0;
myTreeView->SelectedImageIndex = 1;
/* Set the index of image from the
ImageList for selected and unselected tree nodes.*/
this->rootImageIndex = 2;
this->selectedCustomerImageIndex = 3;
this->unselectedCustomerImageIndex = 4;
this->selectedOrderImageIndex = 5;
this->unselectedOrderImageIndex = 6;
// Create the root tree node.
TreeNode^ rootNode = gcnew TreeNode( "CustomerList" );
rootNode->ImageIndex = rootImageIndex;
rootNode->SelectedImageIndex = rootImageIndex;
// Add a main root tree node.
myTreeView->Nodes->Add( rootNode );
// Add a root tree node for each Customer object in the ArrayList.
IEnumerator^ myEnum = customerArray->GetEnumerator();
while ( myEnum->MoveNext() )
{
Customer^ myCustomer = safe_cast<Customer^>(myEnum->Current);
// Add a child tree node for each Order object.
int countIndex = 0;
array<TreeNode^>^myTreeNodeArray = gcnew array<TreeNode^>(myCustomer->CustomerOrders->Count);
IEnumerator^ myEnum = myCustomer->CustomerOrders->GetEnumerator();
while ( myEnum->MoveNext() )
{
Order^ myOrder = safe_cast<Order^>(myEnum->Current);
// Add the Order tree node to the array.
myTreeNodeArray[ countIndex ] = gcnew TreeNode( myOrder->OrderID,unselectedOrderImageIndex,selectedOrderImageIndex );
countIndex++;
}
TreeNode^ customerNode = gcnew TreeNode( myCustomer->CustomerName,unselectedCustomerImageIndex,selectedCustomerImageIndex,myTreeNodeArray );
myTreeView->Nodes[ 0 ]->Nodes->Add( customerNode );
}
}
private void FillTreeView()
{
// Load the images in an ImageList.
ImageList myImageList = new ImageList();
myImageList.get_Images().Add(Image.FromFile("Default.gif"));
myImageList.get_Images().Add(Image.FromFile("SelectedDefault.gif"));
myImageList.get_Images().Add(Image.FromFile("Root.gif"));
myImageList.get_Images().Add(Image.FromFile("UnselectedCustomer.gif"));
myImageList.get_Images().Add(Image.FromFile("SelectedCustomer.gif"));
myImageList.get_Images().Add(Image.FromFile("UnselectedOrder.gif"));
myImageList.get_Images().Add(Image.FromFile("SelectedOrder.gif"));
// Assign the ImageList to the TreeView.
myTreeView.set_ImageList(myImageList);
// Set the TreeView control's default image and selected image indexes.
myTreeView.set_ImageIndex(0);
myTreeView.set_SelectedImageIndex(1);
/* Set the index of image from the
ImageList for selected and unselected tree nodes.*/
this.rootImageIndex = 2;
this.selectedCustomerImageIndex = 3;
this.unselectedCustomerImageIndex = 4;
this.selectedOrderImageIndex = 5;
this.unselectedOrderImageIndex = 6;
// Create the root tree node.
TreeNode rootNode = new TreeNode("CustomerList");
rootNode.set_ImageIndex(rootImageIndex);
rootNode.set_SelectedImageIndex(rootImageIndex);
// Add a main root tree node.
myTreeView.get_Nodes().Add(rootNode);
// Add a root tree node for each Customer object in the ArrayList.
for (int iCtr1 = 0; iCtr1 < customerArray.get_Count(); iCtr1++) {
Customer myCustomer = (Customer)customerArray.get_Item(iCtr1);
// Add a child tree node for each Order object.
int countIndex = 0;
TreeNode myTreeNodeArray[] =
new TreeNode[myCustomer.customerOrders.get_Count()];
for (int iCtr2 = 0; iCtr2 < myCustomer.customerOrders.get_Count();
iCtr2++) {
Order myOrder = (Order)myCustomer.customerOrders.get_Item(iCtr2);
// Add the Order tree node to the array.
myTreeNodeArray.set_Item(countIndex,
new TreeNode(myOrder.orderID, unselectedOrderImageIndex,
selectedOrderImageIndex));
countIndex++;
}
// Add the Customer tree node.
TreeNode customerNode = new TreeNode(myCustomer.customerName,
unselectedCustomerImageIndex, selectedCustomerImageIndex,
myTreeNodeArray);
myTreeView.get_Nodes().get_Item(0).get_Nodes().Add(customerNode);
}
} //FillTreeView
플랫폼
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에서 지원