모든 정보가 포함되도록 노력하십시오.일반적이고 구속력이있는 균일 한 스트레치 레이아웃
은 거의 그래서 같은 원 세포의 뷰 (VM 상응하는 뷰)가 필요합니다 :
********
**********
************
**************
**************
**************
**************
************
**********
********
합병증의 몇 : 우리는 내가 얼마나 많은 세포를 모르는 해고하기 전에 표시 할 수 있습니다. 모든 셀의 크기는 동일해야합니다. 전체보기는 확장 가능해야합니다.
단순화 된 세계에서 내 창은 20 개의 RowViewModel 개체를 만들고 각 생성자에게 만들어야하는 열 수를 전달합니다.
내 주요보기 :
<Viewbox Stretch="Uniform">
<ItemsControl ItemsSource="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Window}},Path=Rows}" >
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Rows="{Binding Path=Rows.Count}" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</Viewbox>
그리고 내 RowView :
<Grid>
<ItemsControl ItemsSource="{Binding Columns}" >
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="{Binding Columns.Count}"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</Grid>
내 휴대보기 : 가진 행 그래서 약자로
<Border >
<Viewbox Stretch="Uniform" >
<Label FontSize="10" Content="{Binding Notice}" Foreground="White" />
</Viewbox>
</Border>
, 모든 행이 같은 폭 셀 수가 적 으면 셀이 더 넓어집니다. 각 행에 20 개의 셀이 있다고 말하면 각 셀의 크기는 같지만 HorizontalAlignment 설정에도 불구하고 모든 것이 공백 셀을 추가하기 때문에 왼쪽에 정렬됩니다. 나는 내가 원하는 곳에 공백의 셀을 삽입 할 수 있다고 가정하고 있지만 이것은 데이터를 퍼지하여 디스플레이가 올바르게 보이도록 만든다고 생각합니다. B-A-D는 동의 할 것입니다.
나는 여러 가지 접근법을 시도해 보았으며 이것이 지금까지 가장 근접하다고 생각하지만 나는 그것을 놓치고있다. 제발 도와 줄 수있어?
양해 해 주셔서 감사합니다.