<Application.Resources>
<DataTemplate x:Key="CellTemplate1">
<ComboBox Grid.Column="0" Height="35" Width="165">
<ComboBoxItem>Sync1</ComboBoxItem>
<ComboBoxItem>Sync2</ComboBoxItem>
<ComboBoxItem>Sync3</ComboBoxItem>
</ComboBox>
</DataTemplate>
<DataTemplate x:Key="CellTemplate2">
<TextBlock Foreground="DarkRed" Text="{Binding Path=Value}" />
</DataTemplate>
</Application.Resources>
<syncfusion:GridTemplateColumn MappingName="UserId" Width="300" SetCellBoundValue="True" CellTemplateSelector="{StaticResource selector}">
</syncfusion:GridTemplateColumn>
public class EditTemplateSelector : DataTemplateSelector
{
protected override DataTemplate SelectTemplateCore(object item, DependencyObject container)
{
if (item != null)
{
var data = (item as DataContextHelper).Record as UserInfo;
if (data.UserId < 1015)
return Application.Current.Resources["CellTemplate1"] as DataTemplate;
else
return Application.Current.Resources["CellTemplate2"] as DataTemplate;
}
return base.SelectTemplateCore(item, container);
}
} |