Grid
에 표시하려는 일부는 text data
입니다. 가운데 열은 다른 두 개의 너비의 두 배로 격자의 전체 너비를 차지합니다. text
은 길기 때문에 포장해야합니다. 내가 일을 할 수없는 것 (그리고 과거의 다른 쿼리에서 다른 사람들이 비슷한 문제를 겪고 있음을 알 수있다.)은 단어 줄 바꿈과 작업 할 그리드 크기 조정을 얻고있다. 내가 가지고있는 것은 :텍스트 배치, 격자 및 별 크기 조정
<Window.Resources>
<local:DTData x:Key="dtData" />
</Window.Resources>
<StackPanel DataContext="{StaticResource dtData}">
<ListBox ItemsSource="{Binding}" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Border x:Name="a" Grid.Column="0" Margin="4"/>
<TextBlock Margin="4" Grid.Column="0" TextWrapping="Wrap"
Text="{Binding A}" Width="{Binding ActualWidth, ElementName=a }" MinWidth="100"/>
<Border x:Name="b" Grid.Column="1" Margin="4"/>
<TextBlock Margin="4" Grid.Column="1" TextWrapping="Wrap"
Text="{Binding B}" Width="{Binding ActualWidth, ElementName=b }" MinWidth="100"/>
<Border x:Name="c" Grid.Column="2" Margin="4"/>
<TextBlock Margin="4" Grid.Column="2" TextWrapping="Wrap"
Text="{Binding C}" Width="{Binding ActualWidth, ElementName=b }" MinWidth="100"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</StackPanel>
이 작업을 텍스트 줄 바꿈을 강제로 WPF TextBox and Scroll behavior에서 Border
트릭을 사용하지만 열의 폭이 설정 한 최소 폭 또는 긴 단어 큰 경우 중 하나입니다.
칼럼이 그리드의 폭에 맞도록 강제하는 방법을 알고 있습니까?
가능한 중복 재현하기 위해, 당신은 모든 데이터를 제공하지 않은 것도있을 수 있습니다 [어떻게 WPF 그리드 열 내용을 클립하는 스타로 정의합니까를?] (http://stackoverflow.com/questions/25567474/how-do-i-get-wpf-grid-columns-defined-with-star-to-clip-content) – Starceaker