2009-10-13 11 views
1

나는이 문제를 해결 내 머리를 얻으려고 : 나는 LargeIcon보기에서 폼의 목록보기가 (System.Windows.Forms.View.LargeIcon)이상한 .NET의 ListView 행동

이 줄은 생성자에

:

this.listView1.LargeImageList.ImageSize = new Size(32, 32); 

그리고이 함수는 더블 클릭시 호출됩니다 내가 목록보기 더블 클릭하면, 크기 변경이 예상대로

private void listView1_DoubleClick(object sender, EventArgs e) 
{ 
    this.listView1.LargeImageList.ImageSize = new Size(64, 64); 
} 

하지만 내가 가지고있는 아이콘이 박탈되고, 난 그냥 BI를 얻을 수 g 빈 공간. 나중에 사용하기 위해 ImageIndex를 설정하더라도 공백으로 남으며 다시 표시 할 수 없습니다.

내가 뭔가 잘못하고 있다고 가정합니다.하지만 .NET이 손상 될 수도 있습니다. 아이콘이 사라지지 않도록 무엇을 변경해야합니까?

+0

적절한 크기의 아이콘이 있습니까? (64, 64)? –

+0

아니요, 모든 아이콘은 (200,200)이지만 처음에는 (32, 32)로 작동합니다. – Smashery

답변

2

난 당신이 MSDN에 설명이 경고로 실행하는 생각 (내가 .NET 2.0에서 오전) (http://msdn.microsoft.com/en-us/library/system.windows.forms.imagelist.imagesize.aspx) :

때문에 핸들이 다시 생성됩니다 ImageSize 속성을 설정, 은 이미지 속성 을 설정하기 전에 ImageSize를 설정해야합니다.

게다가 시스템을 사용하여 32x32에서 64x64로 이미지의 크기를 조정하면 자연스럽게 저화질 이미지가 생성됩니다.

+0

예, 저의 저화질 이미지에 대해서는 신경 쓰지 않습니다. 지금은 프로토 타이핑 중입니다. 이미지가 사라지고 다시 표시 할 수없는 경우가 많습니다. 당신이 묘사 한 경고는 실제로 문제입니다 - 아이콘의 크기를 변경하려고 할 때마다 이미지 세트를 다시 만들어야한다는 것을 의미합니까? – Smashery