2016-12-21 1 views
0

아래 코드에 무엇을 추가해야합니까? 내가 뭘하는지목록보기로 이미지 표시 wpf

는 지금까지 내 코드 내가 목록보기에 이미지를 표시하기 위해 필요한 일을

<ListView Name="Thumbnails"> 
    <ListView.ItemsPanel> 
     <ItemsPanelTemplate> 
     <UniformGrid Columns="1"/> 
     </ItemsPanelTemplate> 
    </ListView.ItemsPanel> 
</ListView> 


foreach (var item in lstImages) 
{ 
    Thumbnails.Items.Add(new BitmapImage(new Uri(item))); 
} 

인 목록보기

의 이미지를 볼 수 있습니다. 코드의 출력은 문자열 일 뿐이므로 검색을했지만 찾은 코드를 이해하지 못합니다. 감사합니다

+0

제공된 답에 어떤 반응이 있습니까? – Clemens

답변

-2

ListView의 ItemSource는 URI 목록으로 설정되어야합니다. 그런 다음 소스가 값에 바인딩 된 이미지 컨트롤이 포함 된 ItemTemplate을 설정해야합니다. 이미지 컨트롤의

Thumbnails.Items.Add(new Image() { Source = new BitmapImage(new Uri("yourpic.png", UriKind.Relative)) }); 
+0

이것은 클레멘스 대답의 간단한 버전이었습니다 - 당신은이 대답을 downvoted해서는 안됩니다. –

+0

나는 어떤 대답 선거 투표도하지 않았다. –

-1

리스트 뷰에 이미지 요소를 추가합니다 Source 컬렉션 요소에 대한 속성입니다. 당신은 단지뿐만 아니라, ImageSourcestringUri (및 byte[])에서 내장 된 자동 형 변환으로 인해

foreach (var item in lstImages) 
{ 
    Thumbnails.Items.Add(new BitmapImage(new Uri(item))); 
} 

수 :

<ListView Name="Thumbnails"> 
    <ListView.ItemsPanel> 
     <ItemsPanelTemplate> 
      <UniformGrid Columns="1"/> 
     </ItemsPanelTemplate> 
    </ListView.ItemsPanel> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <Image Source="{Binding}"/> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 

지금의 ListView의 Items 컬렉션에 BitmapImage 인스턴스를 추가 Items 컬렉션에 이미지 파일 경로를 추가하십시오.

foreach (var item in lstImages) 
{ 
    Thumbnails.Items.Add(item); 
} 

다음 단계로 이미지 파일 경로를 보유하는 ObservableCollection<string> 속성이있는보기 모델이 필요할 수 있습니다. ListView의 ItemsSource 속성을이 컬렉션에 바인딩합니다.

1

Image 컨트롤이 포함 된 DataTemplate을에있는 ListView (또는 목록 상자)의 ItemTemplate 속성을 설정하고 바인딩 :

ListView.DataTemplate 
    ItemTemplate 
     Image 
관련 문제