15,666,033 members
Sign in
Sign in
Email
Password
Forgot your password?
Sign in with
home
articles
Browse Topics
>
Latest Articles
Top Articles
Posting/Update Guidelines
Article Help Forum
Submit an article or tip
Import GitHub Project
Import your Blog
quick answers
Q&A
Ask a Question
View Unanswered Questions
View All Questions
View C# questions
View Python questions
View Javascript questions
View C++ questions
View Java questions
discussions
forums
CodeProject.AI Server
All Message Boards...
Application Lifecycle
>
Running a Business
Sales / Marketing
Collaboration / Beta Testing
Work Issues
Design and Architecture
Artificial Intelligence
ASP.NET
JavaScript
Internet of Things
C / C++ / MFC
>
ATL / WTL / STL
Managed C++/CLI
C#
Free Tools
Objective-C and Swift
Database
Hardware & Devices
>
System Admin
Hosting and Servers
Java
Linux Programming
Python
.NET (Core and Framework)
Android
iOS
Mobile
WPF
Visual Basic
Web Development
Site Bugs / Suggestions
Spam and Abuse Watch
features
features
Competitions
News
The Insider Newsletter
The Daily Build Newsletter
Newsletter archive
Surveys
CodeProject Stuff
community
lounge
Who's Who
Most Valuable Professionals
The Lounge
The CodeProject Blog
Where I Am: Member Photos
The Insider News
The Weird & The Wonderful
help
?
What is 'CodeProject'?
General FAQ
Ask a Question
Bugs and Suggestions
Article Help Forum
About Us
Search within:
Articles
Quick Answers
Messages
Artificial Intelligence
Artificial Intelligence
Neural Networks
Machine Learning
Deep Learning
ML.Net
Big Data
Data Science
Tensorflow
ChatGPT
Internet of Things
Internet of Things
Arduino
Edge Device
Raspberry-Pi
Wearables
IoT Edge
Industrial IoT
DevOps
DevOps
Agile
Automation
Continuous Build
Continuous Delivery
Continuous Deployment
Continuous Integration
Deployment
Git
Installation
Integration Testing
Load Testing
Quality Assurance
TFS
Unit Testing
Testing
Containers
Containers
Docker
Kubernetes
Virtual Machine
High Performance Computing
High Performance Computing
GPU
Parallel Processing
Parallelization
Vectorization
Hosted Services
Hosted Services
AWS
Cordova
ExtJS
Google Cloud
Microservices
PhoneGap
Serverless
Storage
Web Hosting
WordPress
Azure
Security
Security
Blockchain
Cryptography
Encryption
Identity
Identity Server
Web Development
Web Development
Blazor
CSS3
Flask
HTML5
Kestrel
LESS
Nginx
Node.js
React
SCSS
Spring
Vue.js
ASP.NET
CSS
Apache
HTML
IIS
XHTML
Mobile Apps
Mobile Apps
Flutter
Ionic
iOS
Nativescript
React Native
Xamarin
Windows Mobile
Android
Desktop Programming
Desktop Programming
Cocoa
Electron
QT
Universal Windows Platform
X11
Windows Forms
ATL
MFC
Swing
Win32
WTL
WPF
XAML
System
Database Development
Database Development
Data Visualization
Elasticsearch
Lucene
MariaDB
MongoDB
NoSQL
PostgreSQL
Redis
MySQL
SQL Server
Productivity Apps and Services
Productivity Apps and Services
LibreOffice
OpenOffice
Sharepoint
Team Communication Tools
Biztalk
Microsoft Office
SAP
Game Development
Game Development
Doom
Kinect
Playstation 4
Playstation 5
Unity
Unreal
XBox
Multimedia
Multimedia
Audio
Image Processing
Video
Audio Video
DirectX
GDI
GDI+
OpenGL
General Programming
General Programming
Algorithms
Compression
Computational Geometry
Emulation
Exceptions
File
Internet
Localization
Memory Management
Optimization
Parser
Performance
Regular Expressions
Sorting
State Machines
Architecture
Design / Graphics
Printing
String
Threads
Usability
Programming Languages
Programming Languages
ASM
Bash
Basic
COBOL
Dart
Go
Haskell
Kotlin
Lua
Pascal
R
Razor
Rust
Scala
Swift
Typescript
Objective C
Visual Basic
VBScript
C++
C#
F#
FORTRAN
Java
Javascript
Perl
Python
Ruby
SQL
PHP
PowerShell
XML
Articles by Henrik Jonsson (Articles: 10)
Articles: 10
Articles
Technical Blogs
Tips and Tricks
Reference Articles
Projects
Average article rating: 4.92
Desktop Programming
Windows Forms
Keep Your User Interface Responsive Easily Using a Coworker
8 Jul 2012 Updated:
8 Jul 2012
Rating: 4.92/5 Votes: 12 Popularity: 5.31
Licence: CPOL Views: 38,911
Bookmarked: 32
Downloaded: 1,057
Please
Sign up or sign in
to vote.
An alternative approach to the new .NET async/await keywords to program asynchronously commands to make your user interface more responsive.
WPF
Dynamite: High Performace Dynamic Sorting Using Expressions
25 Sep 2008 Updated:
25 Sep 2008
Rating: 4.89/5 Votes: 19 Popularity: 6.14
Licence: CPOL Views: 84,845
Bookmarked: 61
Downloaded: 999
Please
Sign up or sign in
to vote.
Easy-to-use and high performance dynamic sorting of most type of sequences with SQL-like syntax, developed using System.Linq.Expression classes.
Design Adorners in XAML with Data Binding Support
20 Jan 2014 Updated:
20 Jan 2014
Rating: 4.89/5 Votes: 7 Popularity: 4.13
Licence: CPOL Views: 37,694
Bookmarked: 22
Downloaded: 1,684
Please
Sign up or sign in
to vote.
Presents a few simple controls to help you design adorners with data binding support using only XAML
Displaying User Friendly Enum Values in WPF
30 Nov 2011 Updated:
12 Mar 2014
Rating: 4.94/5 Votes: 25 Popularity: 6.91
Licence: CPOL Views: 100,147
Bookmarked: 68
Downloaded: 1,701
Please
Sign up or sign in
to vote.
Presents a helper class to easily display user-friendly enum value representations including customizable and localizable text, images, and arbitrary XAML content. This class can also be used as a general XAML switch statement for enum and non-enum classes.
Bindable Converter, Converter Parameter and StringFormat
17 Sep 2012 Updated:
18 Sep 2012
Rating: 4.87/5 Votes: 12 Popularity: 5.26
Licence: CPOL Views: 73,855
Bookmarked: 20
Downloaded: 1,506
Please
Sign up or sign in
to vote.
How to work around that Binding's Converter, ConvertParameter and StringFormat cannot be specified as dynamic Bindings.
Programming Languages
C#
Static and Type markup extensions for Silverlight 5 and WPF
20 Feb 2012 Updated:
22 May 2012
Rating: 5.00/5 Votes: 8 Popularity: 4.52
Licence: CPOL Views: 43,931
Bookmarked: 18
Downloaded: 840
Please
Sign up or sign in
to vote.
An extended Static markup extension implementation for Silverlight 5 and WPF supporting invoking static methods with arguments, and a Silverlight Type markup extension implementation.
Make Your Application Reversible to Support Undo and Redo
27 Dec 2007 Updated:
2 Jun 2008
Rating: 4.84/5 Votes: 44 Popularity: 7.86
Licence: CPOL Views: 161,198
Bookmarked: 136
Downloaded: 1,261
Please
Sign up or sign in
to vote.
How to make your existing and new applications support in-memory transactions, multi-level and multi-document undo/redo, using Generics and C# 3.0 extension methods and lambda expressions.
XML
Extension Properties
27 Mar 2015 Updated:
27 Mar 2015
Rating: 4.89/5 Votes: 9 Popularity: 4.67
Licence: CPOL Views: 20,263
Bookmarked: 10
Downloaded: 244
Please
Sign up or sign in
to vote.
Another solution for Extension properties in .NET
Lightweight Semantic Types in .NET
8 Oct 2015 Updated:
13 Oct 2015
Rating: 4.98/5 Votes: 28 Popularity: 6.96
Licence: CPOL Views: 25,193
Bookmarked: 32
Downloaded: 315
Please
Sign up or sign in
to vote.
An efficient solution for adding semantic meaning, strong-type checking and validation to your data members.
Web Development
HTML
MultiBinding in Silverlight 5
18 Nov 2011 Updated:
18 Nov 2011
Rating: 4.97/5 Votes: 23 Popularity: 6.77
Licence: CPOL Views: 126,959
Bookmarked: 33
Downloaded: 3,211
Please
Sign up or sign in
to vote.
An enhanced MultiBinding markup extension implementation for Silverlight 5 with support for bindable Converter, ConverterParameter and StringFormat
Average blogs rating:
No blogs have been submitted.
Average tips rating:
No tips have been posted.
Average reference rating:
No reference articles have been posted.
Average project rating:
No projects have been posted.
Henrik Jonsson
Software Developer
Sweden
Henrik Jonsson is a Microsoft Professional Certified Windows Developer (MCPD) that currently works as an IT consultant in Västerås, Sweden.
Henrik has worked in several small and large software development projects in various roles such as architect, developer, CM and tester.
He regularly reads The Code Project articles to keep updated about .NET development and get new ideas. He has contributed with articles presenting some useful libraries for
Undo/Redo
,
Dynamic Linq Sorting
and a
Silverlight 5 MultiBinding solution
.