2013-02-07 2 views
0

거의 모든 정렬 및 여백 조합을 시도했지만 성공하지 못했습니다. ListBox는 기본 창에서 프레임에 바인딩 된 WPF 페이지에 있습니다.WPF 페이지의 ListBox는 내 PC에서 잘 보이지만 더 작은 해상도에서 데이터가 축소됩니다.

ListBox 자체는 문제가 없습니다. 그것은 내가 기대했던대로 정렬됩니다. 내 ListBoxItem에는 Image와 TextBlock이 있습니다. TextBlock이 잘립니다.

다음 그림에서 알 수 있듯이 모든 것이 잘 작동합니다.

enter image description here

목록 상자

는 적절하게 왼쪽 가장자리와 그 파란색 상자의 상단에서 오프셋. 내용 Image 및 TextBlock은 매우 가운데에 배치되어 있으므로 ListBoxItem 개요도 있습니다. 이것은 내 개발 기계에 있습니다.

그리드, 그리드 선 및 정렬 속성을 사용하는 모든 이유는 하드 코딩 된 크기를 설정할 필요가 없다고 생각했습니다. 우리 통제가 스스로 크기를 조정할 것입니다. 실제로 다른 모든 작업에 잘 작동합니다. 나는이 작은 화면에 배치 할 때

는하지만,이 얻을 :

enter image description here

목록 상자 자체가 여전히 올바르게 정렬됩니다. 하지만 이제는 ListBoxItem이 강제로 종료됩니다. 상단 맞춤은 여전히 ​​좋지만 하단이 아래로 밀려서 TextBlock이나 ListBoxItem의 하단을 볼 수 없습니다. 그것에

<Grid VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Margin="1"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="292*" /> 
     <RowDefinition Height="30*"/> 
    </Grid.RowDefinitions> 

    <ListBox Grid.Row="1" Name="lbButtons" Margin="2,0,0,1.5" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Visibility="Visible" > 
     <StackPanel Name="spListBoxItems" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Orientation="Horizontal"> 
      <ListBoxItem Margin="0,0,0,0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" > 
       <StackPanel Orientation="Vertical" HorizontalAlignment="Center" Margin="10,5,10,5"> 
        <Image Source="/COBAN.CobanConsole.UI;component/Images/Buttons/Light/record48_light.png" /> 
        <TextBlock Text="Record" Margin="5,5,0,0"></TextBlock> 
       </StackPanel> 
      </ListBoxItem> 
     </StackPanel> 
    </ListBox> 
</Grid> 

많이하지 :

여기 내 XAML입니다. 무슨 일이 일어나고 있는지에 대한 아이디어가 있습니까?

답변

0

그리드 행 정의에서 * 단위를 사용 중입니다. 그것들은 상대적인 측정 값입니다. 행이 차지할 수있는 공간의 비율을 알려줍니다. 목록 상자에 특정 높이가 있어야하는 경우 다음과 같이 두 번째 행을 절대 크기가되도록 변경해야합니다.

<Grid.RowDefinitions> 
    <RowDefinition Height="*" /> 
    <RowDefinition Height="30"/> 
</Grid.RowDefinitions> 
+0

그렇게 간단하지가 않습니다. 도움을 많이 주셔서 감사합니다. 그것은 그것을 고쳤다. – ernest

관련 문제