2009-12-30 6 views
1

의 격자과 같은 형태 WPF의 뷰 모델을 만들 수 있습니다. 각 열은 컨트롤에서 동일한 공간을 차지하며 조합 된 모든 열은 컨트롤의 너비를 채워야합니다. 컨트롤의 크기는 임의로 조정할 수 있습니다.WPF 내가 가지고있는 색상

따라서 Colors{ Colors.Red, Colors.Green, Colors.Blue }이 포함 된 경우 각 열이 적절하게 색상이 지정된 컨트롤 폭의 3 분의 1을 차지하는 3 개의 열이 필요합니다.

가장 좋은 방법은 무엇입니까? ItemsControl을 제외하고는 ItemsControl이 사용 가능한 너비를 채우기 위해 항목을 늘리지 않는다는 것을 제외하고는 ... Grid에 대한 작업입니다. 그러나 그리드의 열은 바인딩 될 수 없습니다 ....

XAML을 사용하는 것이 좋습니다. 필요한 경우 C#으로 폴백하는 것이 매우 행복합니다.

+0

선택 동작에도 관심이 있으십니까? –

답변

4

UniformGrid을 사용할 수 있습니다. 획일적 인 그리드는 요구 사항에 정확하게 부합하며, 셀에 포함 된 자식의 수에 따라 셀을 추가합니다.

예 :

<ItemsControl ItemsSource="..." ItemTemplate="..."> 
    <ItemsControl.ItemsPanel> 
     <ItemsPanelTemplate> 
      <UniformGrid Rows="1"/> 
     </ItemsPanelTemplate> 
    </ItemsControl.ItemsPanel> 
</ItemsControl> 

행은 (... 뜨아 1)를 계산 구속 Rows1에 설정.

관련 문제