<Window.Resources>
<DataTemplate x:Key="textblockTemplate" DataType="{x:Type local:OrderInfo}">
<TextBlock x:Name="textblock" Text="{Binding Path=SubmittedDate}" />
</DataTemplate>
<DataTemplate x:Key="DateTimeTemplate" DataType="{x:Type local:OrderInfo}">
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<syncfusion:DateTimeEdit
DateTime="{Binding Path=SubmittedDate}" Width="150"/>
</StackPanel>
</DataTemplate>
</Window.Resources>
<syncfusion:SfDataGrid x:Name="sfDataGrid"
ItemsSource="{Binding Path=Orders}"
AllowEditing="True"
AutoGenerateColumns="False">
<syncfusion:SfDataGrid.Columns>
<syncfusion:GridCheckBoxColumn MappingName="IsChecked" />
<syncfusion:GridTextColumn MappingName="SubmittedDate" AllowEditing="False">
<syncfusion:GridTextColumn.CellTemplate>
<DataTemplate>
<ContentControl Content="{Binding }">
<ContentControl.Style>
<Style TargetType="{x:Type ContentControl}">
<!-- Default Template -->
<Setter Property="ContentTemplate" Value="{StaticResource textblockTemplate}" />
<!-- Triggers to change Template -->
<Style.Triggers>
<DataTrigger Binding="{Binding IsChecked}" Value="True">
<Setter Property="ContentTemplate" Value="{StaticResource DateTimeTemplate}" />
</DataTrigger>
</Style.Triggers>
</Style>
</ContentControl.Style>
</ContentControl>
</DataTemplate>
</syncfusion:GridTextColumn.CellTemplate>
</syncfusion:GridTextColumn>
<syncfusion:GridTextColumn MappingName="OrderID"/>
<syncfusion:GridTextColumn MappingName="CustomerName" />
<syncfusion:GridTextColumn MappingName="Country" />
<syncfusion:GridTextColumn MappingName="UnitPrice"/>
</syncfusion:SfDataGrid.Columns>
</syncfusion:SfDataGrid> |