Dirkster.DropDownButtonLib
1.0.4
See the version list below for details.
dotnet add package Dirkster.DropDownButtonLib --version 1.0.4
NuGet\Install-Package Dirkster.DropDownButtonLib -Version 1.0.4
<PackageReference Include="Dirkster.DropDownButtonLib" Version="1.0.4" />
paket add Dirkster.DropDownButtonLib --version 1.0.4
#r "nuget: Dirkster.DropDownButtonLib, 1.0.4"
// Install Dirkster.DropDownButtonLib as a Cake Addin #addin nuget:?package=Dirkster.DropDownButtonLib&version=1.0.4 // Install Dirkster.DropDownButtonLib as a Cake Tool #tool nuget:?package=Dirkster.DropDownButtonLib&version=1.0.4
<h1><img src="https://github.com/Dirkster99/Docu/blob/master/DropDownButtonLib/DropDownButtonLibLogo.png" height="64"/> Overview</h1> The DropDownButtonLib project supplies MVVM/WPF drop down controls that are based on a button.
There are sample screenshot on the Codeplex site from were this project is migrated from: https://dropdownbuttonlib.codeplex.com/
This project is based on the drop down control contained in the Extended WPF Toolkit™ Community Edition:https://wpftoolkit.codeplex.com/ from Xceed. It includes some bugfixes to the original implementation and extends the original controls with a:
- DropDownButton, SplitButton with:
- DropDownItemsButton, SplitItemsButton
controls. The original implementation (DropDownButton, SplitButton) can be used to drop down and interact with single drop down items, while the extended controls (DropDownItemsButton, SplittItemsButton) are based on an ItemsControl and can thus be with multiple drop down items (in a similar fashion as a standard WPF ComboBox or ListBox control).
DropDownButton
<img src="https://github.com/Dirkster99/Docu/blob/master/DropDownButtonLib/DropDownButton.png"/> The DropDown button shows a drop down element that gives users a way of editing something and confirming it with Cancel or OK (this works similar to a dialog but in a drop down scenario).
SplitButton
<img src="https://github.com/Dirkster99/Docu/blob/master/DropDownButtonLib/SplitButton.png"/> The Split button has a drop down section and a button. The drop down element gives you a way of editing/selecting in a similar scenario as in the DropDownButton shown above, while the button itself can be used like a shortcut that refers to the last selected element.
DropDownItemsButton
<img src="https://github.com/Dirkster99/Docu/blob/master/DropDownButtonLib/DropDownItemsButton.png"/> The DropDown button shows a drop down element which can be used to select one element out of many. This could also be implemented with the DropDownButton control but it is much easier with this control since it already contains an ItemsControl inside the drop down element.
SplitItemsButton
<img src="https://github.com/Dirkster99/Docu/blob/master/DropDownButtonLib/SplitItemsButton.png"/> The Split button has a drop down section and a button. The drop down element gives you a way of selecting from among many elements while the button itself can be used like a shortcut that refers to the last selected element.
Demo Application
<img src="https://github.com/Dirkster99/Docu/blob/master/DropDownButtonLib/MainTestWindow.png"/> This is a screenshot of the MainWindow of the included Test Application. The complete implementation is MVVM compliant and all controls are fully themeable (look-less controls).
Theming
Load Light or Dark brush resources in you resource dictionary to take advantage of existing definitions.
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/DropDownButtonLib;component/Themes/MetroDark.xaml" />
</ResourceDictionary.MergedDictionaries>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/DropDownButtonLib;component/Themes/MetroLight.xaml" />
</ResourceDictionary.MergedDictionaries>
These definitions do not theme all controls used within this library. You should use a standard theming library, such as:
- MahApps.Metro,
- MLib, or
- MUI
to also theme standard elements, such as, button and textblock etc.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net40 is compatible. net403 was computed. net45 was computed. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
This package has no dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Dirkster.DropDownButtonLib:
Package | Downloads |
---|---|
Dirkster.FolderBrowser
Provides a WPF/MVVM folder browser tree view control to displays and browse folders in the Windows file system. |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Dirkster.DropDownButtonLib:
Repository | Stars |
---|---|
Dirkster99/Edi
Edi - The open source text editor IDE based on AvalonDock and AvalonEdit
|
Small theming adjustments for integration into MLib and Edi.