Attention! This article, as well as this announcement, are automatically translated from Russian.
The Net.Leksi.WpfMarkupExtension library is designed to extend WPF markup. It contains several classes that you may find useful when developing XAML. All classes are contained in the Net.Leksi.WpfMarkup
namespace.
StyleCombiner
- allows you to apply multiple styles to an element without inheritance.ParameterizedResource
- analogue ofStaticResourceExtension
, which allows using resources with parameters that can be replaced with different values in the markup.XamlServiceProviderCatcher
- allows usingParameterizedResource
in code.BindingProxy
is a universal resource that can serve as a link to any object or act as a binding.BindingProxyMarkup
- used when you need to place a binding value where a markup extension is required.IUniversalConverter
- combines theSystem.Windows.Data.IValueConverter
andSystem.Windows.Data.IMultiValueConverter
interfaces for convenience.DataSwitch
- used instead of a large number ofDataTrigger
that have the same binding but different trigger values. Reduces both the XAML text and the number of calls to the binding source.BoolExpressionConverter
- incomplete implementation of theIMultiValueConverter
interface, which implements theobject Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
method, which is passed an array ofbool
valuesvalues
and a string describing the Boolean expression above them, asparameter
. Returns the result of evaluating an expression.ConverterProxy
- an adapter that is aMarkupExtension
for convertersIValueConverter
orIMultiValueConverter
, which are notMarkupExtension
and cannot become one, since they are already inherited from another type, but are required there, whereMarkupExtension
is expected.
More info: https://github.com/Leksiqq/WpfMarkupExtension/wiki