Best practice for panning/zooming a user control? - silverlight

We currently have a user control which displays a dynamic matrix of other user controls. Since it's dynamic, the view can become large, requiring the user to scroll up/down & left/right in the browser to view everything.
I would like to give the users one view of the user control with the ability to pan & zoom on it, much like the feel of this Telerik control. We own the Telerik controls and I've tried to use the Map control for our purpose, but it doesn't seem like that is going to be a good solution.
I have also placed a Canvas inside of a scroll viewer, and was able to make it pan (using scroll bars) & zoom (using Scale Tranform). This works pretty well, but it's not smooth like the Telerik control is.
So, I'm wondering what other ways there are to do this. Am I overlooking a Silverlight control that would work for me? Any input would be greatly appreciated!

I found this on CodePlex and I like their approach. I will probably be customizing it to be exactly what I want, but it's a good start. Note: It does not implement the 'throwing' capabilities.

Related

Windows Presentation Foundation Adaptive Application

I am new to WPF, i need to know, is it possible to make WPF application responsive, if so, how ?
What i meant with responsive is, all content and controls resize with window resizing accordingly.
This is an extremely general question. The answer would most likely end up being a WPF tutorial, which there are already plenty of.
For your needs, my advice would be to check out the layout system, if you use the correct layouts in the correct spots, your content will resize as you wish.
This link helped me a lot when I started WPF : WPF tutorial #layouts
Its content is limited, so you'll want to look somewhere else eventually, but it does a good job of giving an overview of what is available.
The ones that are most usefull for me are Grid Panel & Dock Panel, ocasionnaly the Stack Panel. Viewbox is usefull for more control on resizing content.
Hope this helps, good luck.

Image Control disapear after it's dragged in Design

I'm a WPF newbie and, unlike WinForms, I have a hard time to setup things in the design window.
My first obstacle is the Image control. After I drag it in the Design window it disappears and there's no way for me to edit its properties (like with the button control for example). The only way to make changes is via the XAML code which isn't very visual and intuitive.
Is there a way to keep editing the Image control in design mode? (example, move it around, select it to view its property panel, etc.)
All you should need to do is give the image control a fixed height and width and it should stay in the designer.
The best thing about the XAML is which separated from code for better re usability like asp.net. It's best you to learn different layouts such as grid, wrappanel, stackpanel etc. Then, you will feel the power of xaml. Else, you can choose the XAML building tools.
Link to refer

Silverlight like login/register control in WPF

If you have created a silverlight business application you will see that in the top righthand corner on the menu is a login hyperlink.
Pressing it opens up a childwindow that displays a login control, within that control is another hyperlink that says "Register" if you press it, it flips the control 180 degrees around from the login control to the register control.
I really like this type of animation and want to do something similar in WPF for a project I am working on. However I am not sure how to do it, has anyone done this or knows where I can find some more information on how to achieve it?
Thank you
3D animations in Silverlight use PlaneProjection, which unfortunately doesn't exist in WPF. You can achieve a similar effect using WPF 3D.
Many pre-made solutions for flipping 3D planes are already available on the web. Some examples:
Thriple
Planerator
FlipControl
Flippable Lists

Making input form rotate in 3d using WPF (like silverlight planeprojection)

I am looking at updating the UI of one of my projects that currently uses Winforms and i was hoping to use WPF. I have used silverlight for a while and wanted to use the same PlaneProjection effects to basically rotate my form (by form i mean a group of input controls) along the Y axis.
After looking over the interwebs it looks like for some reason WPF doesnt support this kind of usage with 2d controls like silverlight does, however after scouring i managed to find Thriple, which looked like it was what i wanted, however i find trying to create my UI in the XAML editor a nightmare with it as it seems to stretch and skew everything and ignores the width/heights as if it is automatically scaling everything.
I was wondering if there was anything else that would allow me to do what i want, ideally i would also like it to support WindowsFormHost controls as i have some winform controls that i would like to continue using. It seems a bit silly that silverlight does EXACTLY what i want, but the main technology it is based upon doesnt...
Any alternatives would be great, i just want something that will let me rotate and translate my controls in 3d space and still allow the user to interact with the control.
I don't think it's as easy to do in WPF, but its definitely possible. You'd have to use the Viewport2DVisual3D class inside a Viewport3d.

What navigation control would you choose to use in your application?

ToolStrip with MenuStrip or RibbonBar?
It combines both of the controls. It also have a TabPages navigation, contextual tabs, etc. However the RibbonBar is a very complex control and when you open a new document in for example Word2007 the half of the screen you see a Ribbon Bar. It is not cool. When you have toolStrips you can layout them to Top, Bottom, Left, Right and have more control of the UI look. We can also hide the toolstrips which we do not want to see and they no longer take any screen space.
Ribbon Bar
It boils down to what you're trying to navigate and how complex do you want the Navigation to work.
I prefer to use simple existing applications to base my programs.
Thus for the most part I use either the MenuStrip + X ToolStrips or just a simple ToolStrip if a menu is more involved than is required to get a task done.
But I would have to guess that many people like the Ribbon Bar since it combines the functionality of both Menu and ToolStrips into one control.
Ribbons look more modern, and will help to give you application a modern and current look.
As for usability, I've preferred the experience, as long as you are unfamiliar with the app.
For apps where you are used to a menubar, it's a difficult change, but for new apps or new users it's a good improvement.

Resources