2011-01-05 33 views
2

我有WPF數據網格數據綁定到對象List<>。問題是其中一個DataGridTextColumn單元格具有較長的多行文本,並且垂直滾動條不讓我滾動瀏覽特定單元格的內容,而只能滾動到下一個單元格。有沒有人遇到過這個問題?代碼如下所示:WPF DataGridTextColumn不能長長的多行文本正確滾動

<DataGridTextColumn Header="Value" Binding="{Binding Value}" Width="*"> 
     <DataGridTextColumn.ElementStyle> 
      <Style TargetType="TextBlock"> 
      <Setter Property="TextWrapping" Value="Wrap" /> 
      </Style> 
     </DataGridTextColumn.ElementStyle> 
     <DataGridTextColumn.EditingElementStyle> 
      <Style TargetType="TextBox"> 
      <Setter Property="TextWrapping" Value="Wrap" /> 
      <Setter Property="AcceptsReturn" Value="true" /> 
      </Style> 
     </DataGridTextColumn.EditingElementStyle> 
</DataGridTextColumn> 
+0

也許一種替代方法? – odez213 2011-01-11 20:21:18

回答

1

我得到我的解決方法,它是使用dataTemplate。 dataTemplate然後包含帶有屬性ScrollViewer.CanContentScroll和ScrollViewer.VerticalScrollBarVisibility集的TextBox控件。

<DataGridTemplateColumn Header="Value" Width="*" IsReadOnly="True"> 
    <DataGridTemplateColumn.CellTemplate> 
     <DataTemplate> 
      <TextBox Text="{Binding Value}" AcceptsReturn="True" TextWrapping="Wrap" Height="150" ScrollViewer.VerticalScrollBarVisibility="Auto" ScrollViewer.CanContentScroll="True"></TextBox> 
     </DataTemplate> 
    </DataGridTemplateColumn.CellTemplate> 
</DataGridTemplateColumn>