Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

LookUpEditBase.ApplyItemTemplateToSelectedItem Property

Gets or sets whether to apply the ItemTemplate to the selected item, displayed within the edit box. This is a dependency property.

Namespace: DevExpress.Xpf.Editors

Assembly: DevExpress.Xpf.Core.v24.2.dll

NuGet Package: DevExpress.Wpf.Core

#Declaration

public bool ApplyItemTemplateToSelectedItem { get; set; }

#Property Value

Type Description
Boolean

true to apply the item template to the selected item; otherwise, false.

#Remarks

There are two properties that allow you to change the visual presentation of the selected item (displayed within the edit box) and items displayed within the dropdown list. These are the BaseEdit.EditTemplate and LookUpEditBase.ItemTemplate properties, respectively. In some instances (e.g., creating an image combobox), it is required to use one template to present the selected item and items displayed within the dropdown list. To do this, set the ApplyItemTemplateToSelectedItem property to true.

The item template is applied only if the combobox’s ButtonEdit.IsTextEditable property is set to false.

Note

Using the ApplyItemTemplateToSelectedItem property overrides the editor’s default template and disables the BaseEdit.NullText property (if specified). To specify the text displayed within the edit box when the editor’s value is null, use the TextEditBase.EditNonEditableTemplate property:

<dxe:ComboBoxEdit.EditNonEditableTemplate>
                <ControlTemplate>
                    <Grid>
                        <Grid.Resources>
                            <dx:NullableToVisibilityConverter x:Key="c1"/>
                            <dx:NullableToVisibilityConverter x:Key="c" Invert="True"/>
                        </Grid.Resources>
                        <TextBlock Text="Select a Color" Visibility="{Binding EditValue, Converter={StaticResource c}}"/>
                        <StackPanel Orientation="Horizontal" Margin="3" Visibility="{Binding EditValue, Converter={StaticResource c1}}">
                            <Rectangle Width="16" Height="16" Margin="3" Fill="{Binding EditValue}" />
                            <TextBlock Text="{Binding EditValue.Color}" Margin="3" />
                        </StackPanel>
                    </Grid>
                </ControlTemplate>
            </dxe:ComboBoxEdit.EditNonEditableTemplate>

#Example

The following example shows how to create an image combobox via templates.

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        x:Class="ComboBoxEdit_CreatingImageComboBox.Window1"
        xmlns:sys="clr-namespace:System;assembly=mscorlib"
        Title="Creating an Image ComboBox"
        Height="300" Width="300">
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition />
            <ColumnDefinition Width="100" />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition />
            <RowDefinition Height="22" />
            <RowDefinition />
        </Grid.RowDefinitions>
        <dxe:ComboBoxEdit ApplyItemTemplateToSelectedItem="True" IsTextEditable="False"
                          Text="(None)" Grid.Row="1" Grid.Column="1" Padding="5,2,5,2">
            <dxe:ComboBoxEdit.ItemTemplate>
                <DataTemplate>
                    <Border Background="Transparent">
                        <StackPanel Orientation="Horizontal">
                            <Rectangle Width="10" Height="10" Fill="{Binding}"
                                       RadiusX="2" RadiusY="2"
                                       Margin="6,0,6,0" />
                            <TextBlock Text="{Binding}" />
                        </StackPanel>
                    </Border>
                </DataTemplate>
            </dxe:ComboBoxEdit.ItemTemplate>
            <sys:String>Red</sys:String>
            <sys:String>Green</sys:String>
            <sys:String>Blue</sys:String>
        </dxe:ComboBoxEdit>
    </Grid>
</Window>

The following code snippets (auto-collected from DevExpress Examples) contain references to the ApplyItemTemplateToSelectedItem property.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

See Also