2011-05-27 60 views
2

我想在WPF DataGrid列標題和行的內容中啓用文字環繞。 尋找解決方案,我經常絆倒像this之類的東西。問題是,它不適合我。所有的WPF DataGrid文本包裝在標題和其他地方

首先,我有這個線路問題:

xmlns:primitives="clr-namespace:Microsoft.Windows.Controls.Primitives;assembly=WPFToolkit" 

我得到不被發現的裝配誤差。 其他XAML代碼存在更多問題。

<Style TargetType="{x:Type primitives:DataGridColumnHeader}"> 
<Setter Property="ContentTemplate"> 
    <Setter.Value> 
     <DataTemplate> 
      <TextBlock TextWrapping="Wrap" Text="{Binding}"></TextBlock> 
     </DataTemplate> 
    </Setter.Value> 
</Setter> 
</Style> 

我把它放在DataGrid標籤內,否則它不會編譯。我也省略了「primitives」--namespace,因爲我沒有實際包含它(見上文)。現在編譯。但是,應用程序在窗口的構造函數中引發一些異常。任何想法如何讓這件事實際上工作?

回答

7

請看到的App.xaml不需要此第一Text wrapping in WPF DataGrid column header

+0

感謝您的回答。我看了一下這個。由於編譯錯誤,我必須省略x:Key屬性。然後,我只將樣式標籤放置在DataGrid標籤內並編譯。儘管我仍然遇到同樣的問題。另外,我正在c#代碼中動態創建我的列。這種方法也適用於這種情況嗎? – 2011-05-27 09:11:24

4

參考作爲可以在這裏看到:

<DataGrid Name="WBdataGrid" AutoGenerateColumns="False" ColumnHeaderHeight="50" > 
    <DataGrid.ColumnHeaderStyle> 
    <Style TargetType="DataGridColumnHeader"> 
     <Setter Property="ContentTemplate"> 
     <Setter.Value> 
      <DataTemplate> 
      <TextBlock TextWrapping="Wrap" Text="{Binding}"></TextBlock> 
      </DataTemplate> 
     </Setter.Value> 
     </Setter> 
    </Style> 
    </DataGrid.ColumnHeaderStyle> 
<DataGrid.Columns>