2017-09-14 40 views
0

enter image description hereXceed DataGrid中:刪除上面詳細列間距

如何刪除這個間距Xceed之前明細行自動放入?通常這裏有一個標題,但我沒有設置它,因爲我不想要它。標有紅色的間距是最煩人的。

我發現,替換這一行:

   <xcdg:DetailConfiguration RelationName="Settings" Title=""> 

這一行:

  <xcdg:DetailConfiguration RelationName="Settings" Title="" UseDefaultHeadersFooters="False"> 

將刪除標記爲紅色的空間。但它也刪除我的標題:

|名稱|說明|編輯值|編輯值|

這裏是我的代碼:

<UserControl.Resources> 

    <!--#region DataTemplateSelector--> 
    <local:SettingsDataTemplateSelector x:Key="SettingsDataTemplateSelector" /> 

    <DataTemplate x:Key="TextboxDataTemplate"> 
     <xcdg:MaskedTextBox IsTabStop="True" Mask="{Binding EditMask}" Text="{Binding EditValue, IsAsync=False, Mode=TwoWay, UpdateSourceTrigger=LostFocus, ValidatesOnExceptions=True}"/> 
    </DataTemplate> 

    <DataTemplate x:Key="ComboDataTemplate"> 
     <ComboBox IsTabStop="True" ItemsSource="{Binding Path=SelectionValues}" 
            SelectedValuePath="Value" 
            SelectedValue="{Binding Path=SelectionValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
            DisplayMemberPath="ValueText"> 
     </ComboBox> 
    </DataTemplate> 

    <DataTemplate x:Key="SliderDataTemplate"> 
     <Slider IsTabStop="True" Value="{Binding EditSliderValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
        Minimum="{Binding MinRangeValue}" 
        Maximum="{Binding MaxRangeValue}" 
        VerticalAlignment="Bottom" 
        IsSnapToTickEnabled="True" 
        TickFrequency="1" 
        Margin="0,0,0,0"/> 
    </DataTemplate> 
    <!--#endregion--> 

    <xcdg:DataGridCollectionViewSource x:Key="Features" 
             Source ="{Binding Path=Demo.Features}" 
             AutoFilterMode="And" 
             AutoCreateDetailDescriptions="False" 
             AutoCreateItemProperties="False"> 
     <xcdg:DataGridCollectionViewSource.DetailDescriptions> 
      <xcdg:PropertyDetailDescription RelationName="Settings" AutoCreateDetailDescriptions="False" AutoCreateItemProperties="False"/> 
     </xcdg:DataGridCollectionViewSource.DetailDescriptions> 
    </xcdg:DataGridCollectionViewSource> 
</UserControl.Resources> 

<Grid> 
    <!--#region Xceed DataGrid--> 
    <xcdg:DataGridControl x:Name="datagrid" 
          ItemsSource="{Binding Source={StaticResource Features}}" 
          KeyUp="DatagridKeyUp" 
          AllowDetailToggle="True" 
          Margin="10" 
          NavigationBehavior="RowOrCell" 
          CellEditorDisplayConditions="RowIsBeingEdited, 
          MouseOverCell, MouseOverRow, RowIsCurrent, CellIsCurrent" 
          EditTriggers="BeginEditCommand, ClickOnCurrentCell, 
          SingleClick, CellIsCurrent, ActivationGesture, RowIsCurrent" 
          ItemScrollingBehavior="Immediate" 
          AutoCreateColumns="False"> 

     <xcdg:DataGridControl.Resources> 
      <Style TargetType="xcdg:TableViewScrollViewer"> 
       <Setter Property="HorizontalScrollBarVisibility" Value="Auto" /> 
       <Setter Property="VerticalScrollBarVisibility" Value="Auto" /> 
      </Style> 
     </xcdg:DataGridControl.Resources> 

     <xcdg:DataGridControl.View> 
      <xcdg:TableflowView UseDefaultHeadersFooters="False" ColumnStretchMode="Last"> 
       <xcdg:TableflowView.FixedHeaders> 
        <DataTemplate> 
         <xcdg:ColumnManagerRow /> 
        </DataTemplate> 
       </xcdg:TableflowView.FixedHeaders> 
      </xcdg:TableflowView> 
     </xcdg:DataGridControl.View> 

     <xcdg:DataGridControl.Columns> 
      <xcdg:Column FieldName="FeatureID" Title="FeatureID" ReadOnly="True" /> 
      <xcdg:Column FieldName="Name" Title="Feature name" ReadOnly="True" /> 
      <xcdg:Column FieldName="Description" Title="Description" ReadOnly="True" /> 
      <xcdg:Column FieldName=" "/> 
     </xcdg:DataGridControl.Columns> 

     <xcdg:DataGridControl.DetailConfigurations> 
      <xcdg:DetailConfiguration RelationName="Settings" Title=""> 
       <xcdg:DetailConfiguration.Columns> 
        <xcdg:Column FieldName="Name" Title="Name" ReadOnly="True"/> 
        <xcdg:Column FieldName="Description" Title="Description" ReadOnly="True"/> 
        <xcdg:Column FieldName="EditValues" Title="Edit Values" ReadOnly="True"/> 
        <xcdg:Column FieldName="EditValueVar" Title="Edit Value" Width="150" ReadOnly="False" 
           CellContentTemplateSelector="{StaticResource SettingsDataTemplateSelector}" 
           DisplayMemberBinding="{Binding}" /> 
        <xcdg:Column FieldName=" "/> 
       </xcdg:DetailConfiguration.Columns> 
      </xcdg:DetailConfiguration> 
     </xcdg:DataGridControl.DetailConfigurations> 
    </xcdg:DataGridControl> 
    <!--#endregion--> 
</Grid> 

編輯:我想通了,如何擺脫藍色的間距,但還是無法弄清楚如何擺脫紅色的。

代碼:

<Style TargetType="xcdg:HierarchicalGroupLevelIndicatorPane" > 
    <Setter Property="MaxWidth" Value="0" /> 
</Style> 

你可能會認爲你可以添加<Setter Property="MaxHeight" Value="0" />,但什麼都不做。

回答

0

藍色的間距由HierarchicalGroupLevelIndicatorPane,這意味着你可以通過簡單的寬度設置爲0幹掉它設置:

<Style TargetType="xcdg:HierarchicalGroupLevelIndicatorPane" > 
    <Setter Property="MaxWidth" Value="0" /> 
</Style> 

紅色間隔是有點難度。最後我在DetailConfiguration上設置UseDefaultHeadersFooters爲false,這會刪除空間,但也會刪除ColumnManagerRow。然後我再次在DetailConfiguration.Headers中創建ColumnManagerRow。

的代碼看起來是這樣的:

 <xcdg:DataGridControl.DetailConfigurations> 
      <xcdg:DetailConfiguration RelationName="Settings" UseDefaultHeadersFooters="False"> 

       <xcdg:DetailConfiguration.Headers> 
        <DataTemplate> 
         <xcdg:ColumnManagerRow /> 
        </DataTemplate> 
       </xcdg:DetailConfiguration.Headers> 

       <xcdg:DetailConfiguration.Columns> 
        <xcdg:Column FieldName="Name" Title="Name" ReadOnly="True" /> 
        <xcdg:Column FieldName="Description" Title="Description" ReadOnly="True" /> 
        <xcdg:Column FieldName="EditValues" Title="Edit Values" ReadOnly="True" /> 
        <xcdg:Column FieldName="EditValueVar" Title="Edit Value" Width="150" ReadOnly="False" 
           CellContentTemplateSelector="{StaticResource SettingsDataTemplateSelector}" 
           DisplayMemberBinding="{Binding}" /> 
        <xcdg:UnboundColumn FieldName=" " /> 
       </xcdg:DetailConfiguration.Columns> 

      </xcdg:DetailConfiguration> 
     </xcdg:DataGridControl.DetailConfigurations>