If the Name property of a control used to display cell values is set to PART_Editor, the GridControl treats it as its inner control, i.e., fills it with values and enables search results highlighting.
The following code example shows how to use custom editors (ProgressBar and Slider) to display and edit the Units On Order column's values.
Xaml |
<dxg:GridControl x:Name="grid" ItemsSource="{Binding Products}"
CustomUnboundColumnData="grid_CustomUnboundColumnData">
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="UnitsOnOrder">
<dxg:GridColumn.DisplayTemplate>
<ControlTemplate>
<ProgressBar Minimum="0" Maximum="50"
Value="{Binding Path=DisplayText, Mode=OneWay,
RelativeSource={RelativeSource TemplatedParent}}"/>
</ControlTemplate>
</dxg:GridColumn.DisplayTemplate>
<dxg:GridColumn.EditTemplate>
<ControlTemplate>
<Grid VerticalAlignment="Center">
<Slider Name="PART_Editor" Minimum="0" Maximum="50"
Value="{Binding Path=EditValue, Mode=TwoWay,
RelativeSource={RelativeSource TemplatedParent},
Converter={local:IntToDoubleConverter}}" />
<TextBlock Text="{Binding EditValue, RelativeSource={RelativeSource TemplatedParent}}"
Foreground="Black" VerticalAlignment="Center"
HorizontalAlignment="Center" TextWrapping="NoWrap" />
</Grid>
</ControlTemplate>
</dxg:GridColumn.EditTemplate>
</dxg:GridColumn>
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView AutoWidth="True" />
</dxg:GridControl.View>
</dxg:GridControl>
|
Note
Using BaseEdit descendants is not recommended.