AvalonDock projects

Sep 4, 2009 at 1:49 PM

Hi all,

I think it's interesting for other users, in which projects AvalonDock is used.

I use it for the TriVista project in our company.

It looks like this:

It's made for data and image acquisition in physical measurement instruments.
Before AvalonDock I used a commercial Docking-Suite, but AvalonDock is more usefull for me.

Maybe others can add some informations on there projects.

Best regards,
Juergen

Sep 4, 2009 at 2:08 PM
Edited Sep 7, 2009 at 8:01 AM
how, your app looks great, just a curiosity: are you comfortable using a ribbon instead of a simple toolbar, I mean, I see a lot of empty space on your GUI on top.
Im working on a project in my company and we're valuating the option to add a ribbon...
Ado

 

Sep 4, 2009 at 4:38 PM

The main-application is able to handle plugins. Every plugin is shown in the ribbon. I think, it will grow in the future, so the empty space should be filled.

A plugin can handle the group, where it will be displayed in the ribbon.
The other groups like "Setup" is filled more then "Data Acquisition".

I think, the Ribbon is a good choice for my needs. It is nothing else than a groupable toolbar.

 

Sep 7, 2009 at 4:50 AM

Hi Jürgen,

it really is interesting to see other projects with AvalonDock.
Your App looks really nice, is it in development or already in production?
Also, I'm curious, are you using the WPF Ribbon from Microsoft or a 3rd party control?

Regards

Sep 7, 2009 at 4:10 PM

Hi Chris

It's in development state, but should be usable in a short time.,

I use the Ribbon-control from DevComponents. I used the Docking suite from them, too.
But AvalonDock is much better in using WinForms or DirectX.

Juergen

Sep 9, 2009 at 1:01 PM
Edited Sep 9, 2009 at 1:04 PM

Here's my application:

I am using AvalonDock wit the Composite WPF and Silverlight (Prism), ribbon is one from Microsoft (WPF Ribbon).

App is still in the development phase.

Regards, Sanjin

Sep 12, 2009 at 3:44 PM
Edited Sep 12, 2009 at 3:45 PM

Hi Sanjin,
It lookes nice. On which way do you add the progress information inside the document tabs?

Greets,
Juergen

Sep 14, 2009 at 7:37 AM

Thanks Juergen :), your also ...

I have modified the classic.xaml, i.e. I copied the DocumentPane and DocumentTabItemStyle Styles from AvalonDock/themes/classic.xaml file in the windows resources of my project (Shell.xaml).
Then I modified the template for the DocumentTabItemStyle. I put the ProgressBar in the header (see <!-- Style customization --> comments):

DocumentTabItemStyle:

<Border
                                    x:Name="tabItemIntBorder"
                                    Grid.Column="1"
                                    BorderThickness="0,1,1,1"
                                    Margin="-0.5,0,0,0"
                                    CornerRadius="0,3,0,0"
                                    BorderBrush="{StaticResource ManagedContentTabControlNormalBorderBrush}"
                                    Background="{DynamicResource {ComponentResourceKey {x:Type ad:DockingManager}, {x:Static ad:AvalonDockBrushes.DocumentHeaderBackground}}}"
                                >
                                        <StackPanel Orientation="Horizontal"
                                            Margin="5,0,4,0">

                                            <!-- Style customization -->
                                            <ProgressBar Margin="0,0,5,0" Style="{StaticResource DocumentTabProgressBarStyle}"></ProgressBar>
                                            <!-- Style customization left,top,right,bottom -->
                                            
                                            <TextBlock
                                            x:Name="tabItemTitle"
                                            TextTrimming="CharacterEllipsis"
                                            TextWrapping="NoWrap"
                                            Text="{TemplateBinding Title}"
                                            Foreground="{DynamicResource {ComponentResourceKey {x:Type ad:DockingManager}, {x:Static ad:AvalonDockBrushes.DocumentHeaderForeground}}}"/>
                                            <ad:AlignedImage x:Name="PART_LockedIcon" Margin="2,0,0,0" Visibility="Collapsed" VerticalAlignment="Center" HorizontalAlignment="Center">
                                                <Image Source="/AvalonDock;component/resources/Images/Locked.png" Width="6" Height="8" Stretch="Uniform"/>
                                            </ad:AlignedImage>
                                            
                                        </StackPanel>
                                    </Border>

...

<!-- ProgressBar style -->
        <Style x:Key="DocumentTabProgressBarStyle" TargetType="{x:Type ProgressBar}">

            <Setter Property="Minimum" Value="0"/>
            <Setter Property="Maximum" Value="1"/>
            <Setter Property="Value" Value="{Binding Path=Percentage}"/>

...

The progressbar value is set through DataBinding (classic, i.e. Window DataContext is bind to the model and model is updated in the background thread).

Sep 21, 2010 at 9:11 PM

Hi Sanjin:

I am interested in your work.

You mentioed Silverlight, is your application a "rich internet application" developed using CompositeWPF/Silverlight and AvalonDock lib?

I am invetigating the possibility to develope a "rich internet application" using CompositeWPF/Silverlight and AvalonDock.

I would appreciate if you could share more of your experience.

Thank.

Gary

Sep 22, 2010 at 4:44 PM

Well I think that Sliverlight version of the AvalonDock Library is not avaible, i.e. it is developed only for the desktop applications.

My application is developed using the Prism library. Prism is used to achieve application modularity and code reuse. Prism project is available on the CodePlex site:  http://compositewpf.codeplex.com/
With Prism you can have single codebase (in most) for the Silverlight and WPF desktop application. Since I am using the AvalonDock library my application cannot be deployed as Silverlight application.

With AvalonDock library I am very satisfied. All crashes of my applications were never caused by AvalonDock library :). As far as Prism goes, I have learned a lot about application design and patterns. I recommend Prism for application development.

Sep 22, 2010 at 6:46 PM

Hi Sanjin:

Thank you so much for sharing your experience!

Gary

Sep 23, 2010 at 4:19 PM

Hi,

Here are two screen shots of an application I have been working on. 

It uses AvalonDock, custom themes, in conjunction some minor modifications to AvalonDock.

Uploaded with ImageShack.us Uploaded with ImageShack.us

 

Sep 23, 2010 at 7:57 PM

multithreaded ... Very nice and professional. Clean and beautiful design. Congratulations :)

Sep 28, 2010 at 1:36 AM

Hi Juergen: Your app really looks great. I just started evaluating AvalonDock and got a question: How do you add an icon to the tab header? I understand there is a tutorial on how to add a progress bar to the tab header, and it's quite a lot of style code involved. Is there an easier way to do it? I thought, showing an icon in the tab header is a very basic feature that should be supported out-of-box.

 

Sep 29, 2010 at 1:32 PM

@miliu99

If you are using DockableContent it's the "Icon" field.  Then just make sure the control template for DocumentTabItemStyle makes use of this.

 

 

 

 

Oct 2, 2010 at 2:05 PM

Hello,

I am using AvalonDock in a prototype neural network designer. I've only changed the controlFrameWork of the floating windows, so that they support drag & drop.

Here's a screenshot:

Mar 14, 2011 at 8:23 PM

Hi, Sanjin:

How does your application developement go? 

I am developing an application similar to yours: Prism4+AvalonDock+WPF ribbon. It is in prototype stage.

I want to have a DataGrid control that looks like yours: with filters on the top. I tried to use a sample from online, but couldn't make it work . Not sure what is wrong.

Could you share some experience with the DataGrid with filters?

    --- Which design pattern does you used? MVP or MVVP?

    ---  Do you use backgourn thread to generate data?

    --- How to make sure the datagrid is displayed on the document pane?

Thanks in advance.

Gary

 

 

 

Mar 15, 2011 at 9:03 AM
Edited Mar 15, 2011 at 9:04 AM

Well, the application is in use in our organization :)

"DataGrid with filters ..."
That is the custom control that I've developed. It is published on the codeproject.com site: http://www.codeproject.com/KB/WPF/DataGridFilterLibrary.aspx .
Full source and demo project is available there. Demo project generates data in the background.

I am using a MVVP: http://en.wikipedia.org/wiki/Model_View_ViewModel

"How to make sure the datagrid is displayed on the document pane?" - I didn't fully understand your question, but to use AvalonDock with Prism you have to use so called
RegionAdapters (http://avalondock.codeplex.com/discussions/218475?ProjectName=avalondock).
DataGrid is placed in the UserControl that is associated with the specific view. When the view needs to be displayed in certain region (i.e. mainRegion.Add(myView)),
RegionAdapter adapts the view. Actually, RegionAdapter wraps the UserControl inside one AvalonDock.DocumenPane.

Mar 17, 2011 at 5:35 AM

Hi, Sanjin:

Thank you so much for your quick response!

I did't realize that the sample datagrid control I am using was created by you. Great job!

I created a view in module3 which is a usercontrol holding your datagrid control. But when I run the app, the datagrid column headers show up, no data polulated.

I'll try to figure out what is wrong.

Thanks again.

Gary

Mar 29, 2011 at 8:10 AM

Hey Sanjin

I am starting a new project with using WPF and PRISM 4. I am plaaning to use Avalondock. Looking at your project and comments it looks like you are using a region adapter for Avalon. However I could not get any sample for this region adapter. The link that you mentioned ((http://avalondock.codeplex.com/discussions/218475?ProjectName=avalondock) actually does not contain any sample.

Can you please help me on the approach you took for your region adapter. If you could point to any sample, that would be good.

Vikas Rao

Mar 29, 2011 at 8:57 AM

Go to http://compositewpfcontrib.codeplex.com. Download the source code. Lookup for the "CompositeWPFContrib.Composite.Presentation.csproj" project (path in the source is: \CompositeWPFContrib-23128\Trunk\src\Extensions\PrismV2\CompositeWPFContrib.Composite.Presentation).

Sep 11, 2012 at 6:06 PM
Edited Sep 11, 2012 at 6:08 PM

We are working same kind of project , can you post this type project in code project or some where , we are working on WPF Ribbon and Prism but we dont have good hands on on prism so looking to convert this appl;ication as same ur application but have not gotten any good material or unable to convert

 

but your application looks very close to our requirement can you share at least demo where u have ribbon prism avalon dock together?

 same as user

 Thanks

A-

Feb 21, 2013 at 5:14 PM
Hi,

I have been working on a GitHub project to create a participatory IDE framework that uses PRISM, AvalonDock, MahApps Metro etc. Please feel free to look at Wide IDE - comment, participate and contribute to the project if you have time.

Image

Thanks
Chandra
Mar 12, 2013 at 7:05 PM
Edited Mar 12, 2013 at 7:05 PM
Hi,

I am looking at integrating a document type with a corresponding tool window into my AvalonDock application. Does anyone know how I configure AvalonDock such that I can build a document view and tool window on the same viewmodel? Is that possible or do I need some funky trick to get this done? My problem is more to the point in the

PanesStyleSelector
PanesTemplateSelector

class. In there, it seems, I am only able to associate one viewmodel with one document or tool window. Surely, its no problem to associate a document with a viewmodel and a set of tool window views. But does anyone know how?
Apr 1, 2013 at 11:22 PM
Hello Multithreaded,

I have to start the development of a new application and I am considering to use AvalonDock. I like the design of your interface very much. Could you tell me briefly how you created the main tab (roster, incident, etc)? What controls did you use?

Thanks in advance.
Gonzalo.
Feb 23, 2014 at 6:45 PM
Hi Multithreaded,
I have a similar request. I need to present a proof of concept for the UI this week and I liked your design very much. I am new to AvalonDock. I would appreciate it if you could share the details of your xaml for this UI.
Thanks!
Neo