src/MCM.UI/GUI/Prefabs/DropdownWithHorizontalControl.Checkbox.xml
<Prefab>
<Parameters>
<Parameter Name="SelectorDataSource" DefaultValue="SelectorDataSource" />
</Parameters>
<Constants>
<Constant Name="Extension.Width" BrushLayer="Default" BrushName="SPOptions.Dropdown.Extension" BrushValueType="Width" />
<Constant Name="DropdownCenter.Width" BrushLayer="Default" BrushName="SPOptions.Dropdown.Center" BrushValueType="Width" />
<Constant Name="DropdownCenter.Height" BrushLayer="Default" BrushName="SPOptions.Dropdown.Center" BrushValueType="Height" />
</Constants>
<Window>
<ListPanel Id="HorizontalControlParent" DataSource="*SelectorDataSource" WidthSizePolicy="CoverChildren" HeightSizePolicy="CoverChildren">
<Children>
<!--Type Selection-->
<OptionsDropdownWidget Id="DropdownParent" WidthSizePolicy="Fixed" HeightSizePolicy="CoverChildren" SuggestedWidth="362" HorizontalAlignment="Center" VerticalAlignment="Center" DropdownContainerWidget="DropdownClipWidget\DropdownContainerWidget" ListPanel="DropdownClipWidget\DropdownContainerWidget\ScrollablePanel\ClipRect\PrimaryUsageSelectorList" Button="DropdownButton" CurrentSelectedIndex="@SelectedIndex" RichTextWidget="DropdownButton\SelectedTextWidget" DropdownClipWidget="DropdownClipWidget">
<Children>
<ButtonWidget Id="DropdownButton" DoNotPassEventsToChildren="true" WidthSizePolicy="StretchToParent" HeightSizePolicy="Fixed" SuggestedHeight="!DropdownCenter.Height" HorizontalAlignment="Center" VerticalAlignment="Center" Brush="SPOptions.Dropdown.Center">
<Children>
<RichTextWidget Id="SelectedTextWidget" WidthSizePolicy="StretchToParent" HeightSizePolicy="StretchToParent" HorizontalAlignment="Center" VerticalAlignment="Center" PositionYOffset="1" Brush="SPOptions.Dropdown.Center.Text"/>
</Children>
</ButtonWidget>
<!--Dropdown Visual-->
<Widget Id="DropdownClipWidget" WidthSizePolicy="CoverChildren" HeightSizePolicy="Fixed" ClipContents="true" WidgetToCopyHeightFrom="DropdownContainerWidget\ScrollablePanel">
<Children>
<BrushWidget Id="DropdownContainerWidget" WidthSizePolicy="Fixed" HeightSizePolicy="Fixed" VerticalAlignment="Bottom" SuggestedWidth="!Extension.Width" SuggestedHeight="380" HorizontalAlignment="Center" Brush="SPOptions.Dropdown.Extension" >
<Children>
<ScrollablePanel Id="ScrollablePanel" WidthSizePolicy="StretchToParent" HeightSizePolicy="CoverChildren" AutoHideScrollBars="true" ClipRect="ClipRect" MarginBottom="20" VerticalAlignment="Bottom" InnerPanel="ClipRect\PrimaryUsageSelectorList" MaxHeight="355" VerticalScrollbar="..\VerticalScrollbar">
<Children>
<Widget Id="ClipRect" WidthSizePolicy="StretchToParent" HeightSizePolicy="CoverChildren" ClipContents="true" MaxHeight="355">
<Children>
<ListPanel Id="PrimaryUsageSelectorList" DataSource="{ItemList}" WidthSizePolicy="Fixed" HeightSizePolicy="CoverChildren" SuggestedWidth="330" HorizontalAlignment="Center" LayoutImp.LayoutMethod="VerticalBottomToTop">
<ItemTemplate>
<ListPanel HeightSizePolicy="Fixed" WidthSizePolicy="StretchToParent" SuggestedHeight="50" VerticalAlignment="Bottom" HorizontalAlignment="Center" LayoutImp.LayoutMethod="HorizontalLeftToRight" UpdateChildrenStates="true" IsEnabled="@CanBeSelected" >
<Children>
<RichTextWidget HeightSizePolicy="Fixed" WidthSizePolicy="StretchToParent" SuggestedWidth="40" SuggestedHeight="100" HorizontalAlignment="Left" VerticalAlignment="Center" Brush="SPOptions.Dropdown.Center.Text" Text="@StringItem"/>
<ButtonWidget DoNotPassEventsToChildren="true" WidthSizePolicy="Fixed" HeightSizePolicy="Fixed" SuggestedWidth="40" SuggestedHeight="40" VerticalAlignment="Center" HorizontalAlignment="Right" Brush="SPOptions.Checkbox.Empty.Button" ButtonType="Toggle" IsSelected="@IsSelected" ToggleIndicator="ToggleIndicator" UpdateChildrenStates="true" MarginRight="25">
<Children>
<ImageWidget Id="ToggleIndicator" WidthSizePolicy="StretchToParent" HeightSizePolicy="StretchToParent" HorizontalAlignment="Center" VerticalAlignment="Center" Brush="SPOptions.Checkbox.Full.Button"/>
</Children>
</ButtonWidget>
</Children>
</ListPanel>
</ItemTemplate>
</ListPanel>
</Children>
</Widget>
</Children>
</ScrollablePanel>
<ScrollbarWidget Id="VerticalScrollbar" WidthSizePolicy="Fixed" HeightSizePolicy="StretchToParent" SuggestedWidth="8" HorizontalAlignment="Right" VerticalAlignment="Center" MarginTop="15" MarginBottom="15" AlignmentAxis="Vertical" Handle="VerticalScrollbarHandle" IsVisible="false" MaxValue="100" MinValue="0">
<Children>
<Widget WidthSizePolicy="Fixed" HeightSizePolicy="StretchToParent" SuggestedWidth="4" HorizontalAlignment="Center" Sprite="BlankWhiteSquare_9" Brush.AlphaFactor="0.2" Brush.Color="#5a4033FF" />
<ImageWidget Id="VerticalScrollbarHandle" WidthSizePolicy="Fixed" HeightSizePolicy="Fixed" SuggestedWidth="8" SuggestedHeight="10" HorizontalAlignment="Center" Brush="FaceGen.Scrollbar.Handle" />
</Children>
</ScrollbarWidget>
</Children>
</BrushWidget>
</Children>
</Widget>
</Children>
</OptionsDropdownWidget>
</Children>
</ListPanel>
</Window>
</Prefab>