Monday, March 28, 2011

Tabbed Interface in C#/WPF

I am currently working on an application with a tabbed interface. I want to be able to split the workspace horizontally or vertically by dragging a tab to one edge of the window.

For example, open two tabs: http://666kb.com/i/b65vvbusbxhvgy8mf.png

Then drag one tab to the bottom of the screen and drop it. A second tabcontrol should appear: http://666kb.com/i/b65vvjnd1ylz54jdz.png

How can I achieve that with C# and WPF in .NET 3.5?
I think Photoshop does that and I'm sure many other applications too.

From stackoverflow
  • check out AvalonDock, maybe this can help you to get into the right direction.

    Christian Hubmann : Das sieht sehr gut aus, danke! :)
  • There's a few libraries out there for this. Other than AvalonDock, there's Sand Dock and Infragistics WPF Controls. I've used both. Both have had their share of bugs. At this point I am using the Infragistics controls and they're getting better in every release.

    Christian Hubmann : Thanks! I think I'll stay with AvalonDock, looks good so far and it's free :)
    emddudley : I'm using the Infragistics one but I'm not very impressed. It's expensive to purchase a license just for the dock, and it's somewhat complicated. They also don't support Composite WPF applications very well either--their NetAdvantage for Composite Application Library hasn't been updated in a year.
  • The Actipro tabbed workspace control is very elegant and I haven't seen any bugs myself.

0 comments:

Post a Comment