layout | title | excerpt | category | tags | comments | |||
---|---|---|---|---|---|---|---|---|
post |
Perspex Alpha 3 |
Alpha 3 of Perspex is now out. |
Perspex |
|
true |
We're pleased to announce that alpha 3 of Perspex is now available.
Perspex is a cross platform .NET UI framework inspired by WPF, with XAML, data binding, lookless controls and much more. Take a look at the video to see our current progress:
Get the alpha through NuGet and download our Visual Studio extension to get started.
@kekekeks has implemented a new skia backend that going forward should provide a multi-platform renderer that also works on mobile devices. The Direct2D backend is also being improved, but our Cairo backend is currently lacking a maintainer. If this sounds like it might interest you, come let us know in our Gitter room and help keep it alive!
XAML binding was rather buggy and lacking in features in the last alpha, but should now be a lot more usable. We've also added some features above and beyond traditional XAML binding:
You can now bind to controls:
{% highlight xaml %} <TextBox Text={Binding ElementName=other, Path=Text} {% endhighlight %}
But in addtions we also have the shorthand form of:
{% highlight xaml %} <TextBox Text={Binding #other.Text} {% endhighlight %}
Ever lamented the hoops you have to jump though in XAML to negate a binding?
Well we feel your pain and so now you can negate bindings just by adding a !
to the binding path:
{% highlight xaml %} Loading... {% endhighlight %}
We also have initial support for MultiBinding
(only one-way at the moment) and
you can also bind to Task
and Observable
and get the results you'd expect!
ListBox
now supports multiple selection, and unlike WPF the multiple selection
can be bound two-way to a view model, enabling you to keep a simple list of
selected items without IsSelected
container style tricks.
Control themes can now be defined in XAML, and the default theme has now been ported in its entirety to XAML. This is important because it means our XAML support is coming up to speed!
Many improvements have been made to the Visual Studio Designer extension including:
- Zoom
- Background color configuration
- Attached property intellisense
- Markup extension intellisense
clr-namespace
supportDesign.DataContext
,Design.Width
andDesign.Height
for setting design-time properties.
PerspexProperty
, like DependencyProperty
is quite heavyweight, so we've
added support for turning standard C# properties into Perspex properties, which
also gives us convenient read-only properties. Read more about it in the
documentation.
Things are moving fast, but we're still only at alpha 3, so there are still many things broken, missing features, performance problems, missing documentation and quite a few memory leaks. We'll be continuing to work on these as we move forward, but please file any bugs you find on our issue tracker and come join us in our Gitter room.