Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dirkster99/suggestboxlib
A WPF Dark/Light AutoComplete TextBox that can easily handle 20.000+ entries.
https://github.com/dirkster99/suggestboxlib
autocomplete dark-theme dotnet light-theme suggest suggestions textbox themable wpf
Last synced: 19 days ago
JSON representation
A WPF Dark/Light AutoComplete TextBox that can easily handle 20.000+ entries.
- Host: GitHub
- URL: https://github.com/dirkster99/suggestboxlib
- Owner: Dirkster99
- License: mit
- Created: 2019-01-16T13:25:50.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2021-08-24T17:26:19.000Z (about 3 years ago)
- Last Synced: 2024-10-06T10:08:11.329Z (about 1 month ago)
- Topics: autocomplete, dark-theme, dotnet, light-theme, suggest, suggestions, textbox, themable, wpf
- Language: C#
- Size: 303 KB
- Stars: 44
- Watchers: 2
- Forks: 2
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Build status](https://ci.appveyor.com/api/projects/status/nw16d7fi59x0se0p?svg=true)](https://ci.appveyor.com/project/Dirkster99/suggestboxlib) [![Release](https://img.shields.io/github/release/Dirkster99/SuggestBoxLib.svg)](https://github.com/Dirkster99/SuggestBoxLib/releases/latest) [![NuGet](https://img.shields.io/nuget/dt/Dirkster.SuggestBoxLib.svg)](http://nuget.org/packages/Dirkster.SuggestBoxLib)
![Net4](https://badgen.net/badge/Framework/.Net 4/blue) ![NetCore3](https://badgen.net/badge/Framework/NetCore 3/blue)
The SuggestBox control in this repository was originally developed by Leung Yat Chun Joseph lycj in his FileExplorer application originating from CodePlex and CodeProject.
# SuggestBoxLib
OverviewA WPF Dark/Light AutoComplete TextBox that can easily handle 20.000+ entries.
This project implements a WPF Dark/Light AutoComplete TextBox that can easily handle 20.000+ entries in the
list of suggestions. The screenshots below show a dark themed demo appliaction with a classic AutoComplete
use case for browsing the file system. This control can also be used to browse other data structures since
the data processing is implemented in the ViewModel/Model layers of the MVVM demo app, while
the control itself is limited to the view.Review the [Wiki section](https://github.com/Dirkster99/SuggestBoxLib/wiki) to find out more details of the available API.
This control is also used in a [Metro Breadcrumb control](https://github.com/Dirkster99/bm).
The first two screenshots show how a seperate combobox like drop down control can be used to select an entry from
a list of recently visited locations (bound to a collection in the viewmodel):
![](https://raw.githubusercontent.com/Dirkster99/Docu/master/SuggestBoxLib/screenshots/Unbenannt-7.png)![](https://raw.githubusercontent.com/Dirkster99/Docu/master/SuggestBoxLib/screenshots/Unbenannt-8.png)
A selection of a recently visited location can be used as a starting point to follow up with more suggestions:
![](https://raw.githubusercontent.com/Dirkster99/Docu/master/SuggestBoxLib/screenshots/Unbenannt-9.png)![](https://raw.githubusercontent.com/Dirkster99/Docu/master/SuggestBoxLib/screenshots/Unbenannt-10.png)
The control can shorten text that is too long for display by inserting ellipses '...' on the:
- left
- right or in the
- centerof a given string. This display is available only if the control is not currently focused.
![](https://raw.githubusercontent.com/Dirkster99/Docu/master/SuggestBoxLib/screenshots/ShowEllipses_Centered.png)## User Feedback
The control implements a [NextTargetLocationArgs](https://github.com/Dirkster99/SuggestBoxLib/blob/master/source/SuggestBoxLib/Events/NextTargetLocationArgs.cs) event that can be raised via enter/escape key in the textbox control to support keyboard
gestures to confirm/cancel editing of a location.![](https://raw.githubusercontent.com/Dirkster99/Docu/master/SuggestBoxLib/screenshots/OK_Cancel.png)
## Error Feedback
The control can show a red rectangle if the user types a completely unmatchable string. This red rectangle
can be triggered with the property attached to the checkbox in the demo application.![](https://raw.githubusercontent.com/Dirkster99/Docu/master/SuggestBoxLib/screenshots/Unbenannt-6.png)
## Highlighting Color and Themes
Screenshot in this repository where done with this highlighting color on Windows 10:
![](https://raw.githubusercontent.com/Dirkster99/Docu/master/SuggestBoxLib/screenshots/Untitled.png)A Dark/Light themed demo application and a Generic application are part of this repository.
![](https://raw.githubusercontent.com/Dirkster99/Docu/master/SuggestBoxLib/screenshots/Unbenannt-4.png)
Load *Light* or *Dark* brush resources in you resource dictionary to take advantage of existing definitions.
```XAML
``````XAML
```These definitions do not theme all controls used within this library. You should use a standard theming library, such as:
- [MahApps.Metro](https://github.com/MahApps/MahApps.Metro),
- [MLib](https://github.com/Dirkster99/MLib), or
- [MUI](https://github.com/firstfloorsoftware/mui)to also theme standard elements, such as, button and textblock etc.