반응형
항목을 가로로 배치하는 WPF ListBox
선택한 이미지를 표시하기위한 WPF 응용 프로그램을 작성하려고합니다. 사용 가능한 모든 이미지를 창 상단의 배너에 표시하고 추가 처리를 위해 기본 창에 기본 선택된 이미지를 표시하려고합니다.
창 왼쪽 에 이미지를 세로로 표시 하는 목록을 원하면 데이터 바인딩을 사용하여이 작업을 매우 우아하게 수행 할 수 있습니다.
<ListBox
Name="m_listBox"
IsSynchronizedWithCurrentItem="True"
ItemsSource="{Binding}"
>
<ListBox.ItemTemplate>
<DataTemplate>
<Image Source="{Binding}" Width="60" Stretch="Uniform" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
이것을 수직 대신 수평으로 만들 수있는 간단한 방법이 있습니까? 솔루션의 주요 요구 사항은 다음과 같습니다.
- 항목은 데이터 바인딩을 사용하여 채워집니다.
- 선택한 항목은 사용자가 클릭하는 것만으로 변경됩니다.
<ListBox ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel IsItemsHost="True" />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBoxItem>listbox item 1</ListBoxItem>
<ListBoxItem>listbox item 2</ListBoxItem>
<ListBoxItem>listbox item 3</ListBoxItem>
<ListBoxItem>listbox item 4</ListBoxItem>
<ListBoxItem>listbox item 5</ListBoxItem>
</ListBox>
컨트롤 의 기본값 ItemsPanel
은 이므로 ListBox
컨트롤에 대한 VirtualizingStackPanel
일반적인 기본 환경을 원하지만 가로로 배치 한 경우이를 지정하고 방향을 변경해야합니다.
예:
<ListBox>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel IsItemsHost="True" Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
</ListBox>
참조 URL : https://stackoverflow.com/questions/1292516/wpf-listbox-that-lays-out-its-items-horizontally
반응형
'programing' 카테고리의 다른 글
CLion은 실행 파일을 어디에 저장합니까? (0) | 2021.01.17 |
---|---|
Django (비 모델) 양식 미리 채우기 (0) | 2021.01.17 |
Ruby : ENV 변수가 있으면 가장 간결하게 사용하고 그렇지 않으면 기본값을 사용합니다. (0) | 2021.01.17 |
Functor가 아닌 (또는 Traversable이 아닌) Foldable의 예? (0) | 2021.01.17 |
C # : 바이트 배열을 문자열로 변환하고 콘솔로 인쇄 (0) | 2021.01.17 |