2017-02-08 91 views
0

我有一個DevExpress網格控件,但是,標題中的空間有限,所以我的所有文本都不適合。還有一個相當大的填充(或邊距可能)在標題,但如果我可以減少將解決我的問題。但我無法弄清楚填充位置在哪裏。如何刪除DevExpress網格中的填充/邊距列標題

的列被定義爲...

 <dxg:GridColumn 
      CellStyle="{StaticResource DefaultCellStyle}" 
      CellTemplate="{StaticResource TestCellValueTemplate}" 
      FieldName="Test2.DisplayValue" 
      Header="{Binding Columns.Test2Column}" 
      HeaderTemplate="{StaticResource TestColumnHeaderTemplate}" 
      HorizontalHeaderContentAlignment="Center" 
      Visible="{Binding Columns.Test2Column.IsVisible}" 
      VisibleIndex="2" /> 

而且HeaderTemplate

<DataTemplate 
     x:Key="TestColumnHeaderTemplate" 
     DataType="vsvm:FvcSessionGridTestColumn"> 
     <StackPanel 
      HorizontalAlignment="Stretch" 
      VerticalAlignment="Stretch" 
      Orientation="Vertical"> 
      <TextBlock 
       HorizontalAlignment="Stretch" 
       FontWeight="Bold" 
       Text="{Binding Header}" /> 
      <TextBlock 
       HorizontalAlignment="Center" 
       FontSize="11" 
       Text="{Binding Time, Mode=OneWay, StringFormat=HH:mm:ss}" /> 
     </StackPanel> 
    </DataTemplate> 

保證金或填充任何地方沒有提到。但是,雖然我可以控制StackPanel的寬度,但如果使其大於可用空間,它會消失在單元的填充之後。

我已經嘗試添加

ColumnHeaderContentStyle="{StaticResource DefaultHeaderStyle}" 

(也)

<Style x:Key="DefaultHeaderStyle" 
      TargetType="{x:Type dxg:HeaderContentControl}"> 
     <Setter Property="Margin" Value="0, 0, 0, 0" /> 
     <Setter Property="Padding" Value="0, 0, 0, 0" /> 
     <Setter Property="Background" Value="Red" /> 
    </Style> 

GridColumn元素,但它似乎被完全忽略。

enter image description here

這可能是值得指出的是,我用「史努比」,試圖找到保證金的來源,它揭示了13, 12, 13, 12ContentMargin。如果我改變這一點,它似乎在Snoop內工作。但是我不知道代碼中的哪個地方適用或在哪裏覆蓋它。

enter image description here

回答

0

我找到了答案終於在這裏...

https://www.devexpress.com/Support/Center/Question/Details/T241104

在我的情況的解決方案是覆蓋ColumnHeaderDockPanel的ContentMargin

<UserControl.Resources>

<ControlTemplate x:Key="{dxgt:GridColumnHeaderThemeKey ResourceKey=ControlTemplate, IsThemeIndependent=True}" TargetType="{x:Type dxg:GridColumnHeaderBase}"> 
     <dxg:ColumnHeaderDockPanel x:Name="PART_LayoutPanel" TextElement.Foreground="{DynamicResource {dxgt:GridColumnHeaderThemeKey ResourceKey=HeaderCaptionForeground}}" ContentMargin="2, 12, 2, 12" /> 
    </ControlTemplate> 
相關問題