Using the DropDownList control
The MADE.UI.Controls.DropDownList element is a custom-built UI element that works with Uno's supported platforms that provides a selection user experience, allowing a user to select one or multiple items from a list.
The control works in a similar way to the ComboBox element in the Windows SDK, with the added extensibility to change modes to select multiple items.
Shown below is the visuals for the control in its default state, in a multiple selection mode.
Example usage
<Page
x:Class="DropDownListSample.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:controls="using:MADE.UI.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"
mc:Ignorable="d">
<RelativePanel Padding="12">
<controls:DropDownList
x:Name="DropDownList"
Header="MultiDropDownList"
ItemsSource="{x:Bind ViewModel.ItemCollection}"
RelativePanel.AlignLeftWithPanel="True"
RelativePanel.AlignRightWithPanel="True"
RelativePanel.AlignTopWithPanel="True"
SelectionMode="Multiple" />
</RelativePanel>
</Page>
Customizing the DropDownList
The control has many customization properties that are exposed to tailor the experience for your application.
HeaderTemplate
The Header can be customized to include custom UI elements as well as a string resource.
The HeaderTemplate is also available to provide a DataTemplate for you to define the rendered UI for the Header.
ItemTemplate and ItemTemplateSelector
The rendered UI elements for the items in the control can be customized with the ItemTemplate or ItemTemplateSelector.
SelectionMode
The DropDownList has two selection modes, Single and Multiple.
By default, the control works in a Single selection mode.
MaxDropDownHeight
The height of the drop-down can be customized to allow you to show more results that the default expanded view.
By default, the drop down will expand to 248 pixels.