Skip to content

faze79/AvalonDock

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

983 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Downloads NuGet Packages
NuGet Dirkster.AvalonDock
NuGet Dirkster.AvalonDock.Themes.Aero
NuGet Dirkster.AvalonDock.Themes.Expression
NuGet Dirkster.AvalonDock.Themes.Metro
NuGet Dirkster.AvalonDock.Themes.VS2010
NuGet Dirkster.AvalonDock.Themes.VS2013 (see Wiki )

Net48 Net8 Net10

Master Branch

Build statusRelease Continuous Integration


AvalonDock

Support this project with a ⭐ -report an issue, or even better, place a pull request 📫 😊

My projects Edi, Aehnlich, and many others (open source or commercial) are powered by this project.

AvalonDock is a WPF Document and Tool Window layout container that is used to arrange documents and tool windows in similar ways than many well known IDEs, such as, Eclipse, Visual Studio, PhotoShop and so forth. Here are some CodeProject articles:

This repository contains additional bug fixes and a feature added fork for: xceedsoftware/wpftoolkit version 3.2-3.6. Version 4.0 and later are developed indepentently, which is why this library (version 4.0 and later) uses the namespaces and library names that were used in AvalonDock 2.0 and earlier versions. But most importantly, the usage of this AvalonDock project remains free for both, commercial and open source users.

There is also an open source repository https://github.com/dotnetprojects/WpfExtendedToolkit with a fixed and stable version of all other (other than AvalonDock) components from the WPFToolKit.

Be sure to checkout the Wiki for more details.

Building AvalonDock from Source

This project supports multitargeting frameworks (.NET 4.8, .NET 8, .NET 10). This means that it requires Visual Studio 2022 or better to build.

Feature Added - Dark and Light VS 2013 Theme

Please review the Project Wiki to see more demo screenshots. All screenshots below are from the MLib based VS 2013 Dark (Accent Color Gold)/Light (Accent Color Blue) theme on Windows 10. Similar theming results should be possible with other theming libraries since the implementation follow these guidelines.

The Docking Buttons are defined in XAML, which ensures a good looking image on all resolutions, even 4K or 8K, and enables us to color theme consistently with the Window 10 Accent Color.

Description Dark Light
Dock Document
Dock Document
Dock Tool Window
Document
Tool Window

Theming

Using the AvalonDock.Themes.VS2013 theme is very easy with Dark and Light themes. Just load Light or Dark brush resources in you resource dictionary to take advantage of existing definitions.

    <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="/AvalonDock.Themes.VS2013;component/DarkBrushs.xaml" />
    </ResourceDictionary.MergedDictionaries>
    <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="/AvalonDock.Themes.VS2013;component/LightBrushs.xaml" />
    </ResourceDictionary.MergedDictionaries>

These definitions do not theme all controls used within this library. You should use a standard theming library, such as:

to also theme standard elements, such as, button and textblock etc.

Mile Stone History

Version 4.72.7

Changed

  • Updated all packages to version 4.72.7 for consistency across the entire library

Version 4.72.6

Fixed

  • VS2013 Theme: Fixed Document TabItem style (ItemContainerStyle) to use correct border resource keys
    • Line 325: Changed BorderBrush from self-binding to DocumentWellTabUnselectedBorder
    • Line 343: Added BorderBrush setter for active state using DocumentWellTabSelectedActiveBorder
    • Line 355: Added BorderBrush setter for inactive state using DocumentWellTabSelectedInactiveBorder
    • Line 375: Added BorderBrush setter for hovered state using DocumentWellTabUnselectedHoveredBorder
    • This ensures document tab borders use the customizable border resource keys instead of binding to background

Version 4.72.5

Added

  • VS2013 Theme: Added unique AutomationProperties.Name to all TabItem styles for improved accessibility
    • Document TabItem: "Document Tab - {Title}"
    • Tool Window TabItem: "Tool Window Tab - {Title}"
    • LayoutDocumentTabItem: "Layout Document Tab - {Title}"
    • LayoutAnchorableTabItem: "Layout Anchorable Tab - {Title}"

Version 4.72.4

Fixed

  • VS2013 Theme: Fixed DocumentPaneControl template to use correct border resource keys
    • Line 220: Changed BorderBrush from DocumentWellTabSelectedActiveBackground to DocumentWellTabSelectedActiveBorder
    • Line 287: Changed BorderBrush from DocumentWellTabSelectedInactiveBackground to DocumentWellTabSelectedInactiveBorder
    • This ensures the tab container border (the underline under all tabs) uses the correct customizable border keys

Version 4.72.3

Added

  • VS2013 Theme: Added dedicated border resource keys for document tabs, enabling full customization of tab borders
    • DocumentWellTabSelectedActiveBorder - Border color for active selected tab
    • DocumentWellTabSelectedInactiveBorder - Border color for inactive selected tab
    • DocumentWellTabUnselectedBorder - Border color for unselected tab
    • DocumentWellTabUnselectedHoveredBorder - Border color for hovered unselected tab
  • Border resource keys implemented in all three VS2013 color schemes (Dark, Light, Blue)

Changed

  • Updated target frameworks from net40, netcoreapp3.0, net5.0-windows to net48, net8.0-windows, net10.0-windows
  • All packages now support modern .NET frameworks

Usage Example

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                    xmlns:reskeys="clr-namespace:AvalonDock.Themes;assembly=AvalonDock.Themes.VS2013">

    <!-- Customize active tab border -->
    <SolidColorBrush x:Key="{x:Static reskeys:ResourceKeys.DocumentWellTabSelectedActiveBorder}"
                     Color="Red" />
</ResourceDictionary>

Version 4.72.2

Changed

  • Updated target frameworks to net48, net8.0-windows, net10.0-windows
  • Removed deprecated framework targets (net40, netcoreapp3.0, net5.0-windows)
  • All packages now support modern .NET frameworks

Version 4.72.1

See git history for earlier changes.

Version 4.72.0

More Patch History

Please review the Path History for more more information on patches and feaures in previously released versions of AvalonDock.

About

Our own development branch of the well known WPF document docking library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C# 99.8%
  • Batchfile 0.2%