2013-05-22 3 views
1

StackPanel 기반 요소 템플릿을 사용하는 XAML의 항목 목록 (ListBox)이 있습니다. 레이아웃은 괜찮지 만 각 항목 주위에 상자를 만들어 각 항목의 배경으로 사각형을 갖고 싶습니다.xaml/C# 배경 사각형이있는 스택 패널

어떻게 든 Canvas를 사용하려고 생각했지만 각 항목의 높이가 (StackPanel 내부의 항목의 높이도) 다양하기 때문에 어떻게해야할지 모르겠다. (C#/XAML). 이 상황에서 템플릿에 가장 적합한 구성은 무엇입니까?

답변

3

ItemTemplate에 지정할 수 있으며 원하는대로 할 수 있습니다.

<ListBox.ItemTemplate> 
    <DataTemplate> 

    <Grid> 
     <Border BorderBrush="Red" BorderThickness="2" Background="Blue"/> 
     <!-- Insert the rest of your Item template stuff here --> 
    </Grid> 

    </DataTemplate> 
</ListBox.ItemTemplate> 
+2

당신은'Grid' – dkozl

+0

감동의 @dkozl 일에'Border'와'StackPanel'를 넣을 경우이 작동합니다 내가 슈퍼 빠른 응답과 하나 개의 콘텐츠 규칙을 잊고 무엇을 얻을 이잖아. 지금 업데이트 중입니다 ... –

+0

고마워,이게 내가 찾고 있었던 바로 그거야! – jookos

0

ListBox는 ItemsControl 유형으로, 항목의 모양을 제어하는 ​​여러 속성을 제공합니다. 이 경우 ItemContainerStyle을 살펴보십시오 (ListBox의 경우 항목 컨테이너는 ListBoxItem의 인스턴스입니다). 예를 들어 ItemsContainerStyle의 Background 속성을 색으로 설정할 수 있습니다.