Skip to content

Autolayout : About

ElbyFross edited this page Dec 14, 2019 · 3 revisions

Conception

The core idea of the WPFH is to take a routine tasks instead the developer.

With WPFH you almost no need to waste your time on layout, localization, scalability, and more other issues that will faced during the normal development. Flexible architecture of the framework allow to take care about all that point.

Still the important rule for the WPFH is that the framework shouldn't cause problems. WPFH is just a tools. It's not order you how to develop your app, and allow in any time to override the base way for logic.

WPFH as problems solver

A developer's nightmare

Let's imagine a not too rare case. You spent several days to make up the UI, connect its elements to the handlers and when everything is ready, it turns out that the management decided that half of the elements will now be in another window, moreover the other half should has completely different content, because the guys from marketing decided that the old one is not friendly enough.

We will not describe the 5 stages that you will go through in case you worked on pure WPF. More important to discuss how it would be if the UI will built using WPFH tools.

How do you'll solve all the problems in 25 minutes?

Problem: Some elements not longer belongs to the current UI and should be moved to another one.

Solution: This is not a problem for you. Your entire UI is described by fields and properties in a separate descripting class. You just need to create a new class in which you will place the fields that should be moved to another window/panel. After that, there is will be enough to connect the new descriptor to another window/panel and your work is done.

Time costs: It's about 1-5 minutes.

More information: UIDescriptor


Problem: Content has changed.

Solution: Common, you are engineer! How they dare to bothering you such kind of tasks? All text content is dynamically binded to the UI elements via the descriptor. The dynamic content stored into the XAML dictionaries in open not encrypted/packaged format. So your teammates responsible for filling the app can easily change it on their own without the slightest knowledge in computer science.

Time costs: Your time is not wasted. Just because you're gorgeous.

More information: GUIContent


Problem: The company decided to expand into new markets and it is necessary to add localization for new languages.

Solution: You are a good engineer and everything is under control. The dynamic content binded to an UI in descriptors works fine with the built-in localization system. You simply remind to localizers that it’s enough to copy the source dictionary and after renaming it with the target culture code, translate the fields within.

Time costs: 5-20 minutes to explain people that there is no need to remove brackets and rename the keys.

More information: Localization

Links

Projects

Relative pages