2016-10-18 3 views
0

У меня есть datagrid в одном из моих приложений WPF, где я показываю некоторые данные из файла XML. Теперь есть строки, которые являются своего рода заголовками. Я хочу показать эти строки с colspan, чтобы он занимал всю строку. Я пробовал приведенный ниже код, но он не работает.Colspan в WPF DataGrid

<DataGrid.RowStyle> 
    <Style TargetType="DataGridRow">  
     <Style.Triggers> 
     <DataTrigger Binding="{Binding Type}" Value="BorderCheck"> 
       <Setter Property="Grid.ColumnSpan" Value="6" /> 
     </DataTrigger>       
     </Style.Triggers> 
    </Style> 
</DataGrid.RowStyle> 
+1

Почему бы не использовать группировку? проверьте это: http://dotnetpattern.com/wpf-datagrid-grouping – Rom

ответ

0

Есть 2 вещи если вам нужна колонка промежуток для всех строк нет никакого смысла добавлять дополнительные столбцы , если вам нужно столбец пядь к определенным строкам, которые необходимо установить его на уровне строк, которые должны быть элементы, которые вы хотят расширить в другие столбцы , как показано ниже

<Grid> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="50"/> 
      <RowDefinition Height="100"/> 
     </Grid.RowDefinitions> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="5*" /> 
      <ColumnDefinition Width="5*" /> 
     </Grid.ColumnDefinitions> 
     <Label Grid.Row="0" Grid.Column="0" FontSize="20" >Name</Label> 
     <TextBox Grid.Row="1" Grid.ColumnSpan="2" BorderThickness="5" /> 
    </Grid> 

Ouputwill be like this

+0

Проблема в том, что я использую DataGrid, а не Grid. В DataGrid мне нужно иметь эту функцию в зависимости от привязки данных. Я имею в виду, что он должен быть динамичным. т. е. если тип строки является чем-то, то только он должен быть столбцами – Joy