A docking library to integrate undo/redo-able tabbed docking, floating and auto hide window management into your application in minutes.
For more details, check out https://wpfdocking.devzest.com.
A docking library to integrate undo/redo-able tabbed docking, floating and auto hide window management into your application in minutes.
License: MIT License
A docking library to integrate undo/redo-able tabbed docking, floating and auto hide window management into your application in minutes.
For more details, check out https://wpfdocking.devzest.com.
how change size in ShowAsDockPositionAction
Hello everyone, the error that is appearing is the following: This Visual is not connected to PresentationSource. ' It happens when I try to undock a window, however this only happens when I load the position of the windows from the XML file, because when the windows are docked without having imported their position it works normally.
Example of how I save the position of the windows:
XmlReader xmlReader = XmlReader.Create (Path);
var Layout = XamlReader.Load (xmlReader) as DockLayout; xmlReader.Close ();
W_Contenedor.DockContenedor.Load (Layout, LoadDockItem);
Example of how to load the position of the windows:
XmlReader xmlReader = XmlReader.Create (Path);
var Layout = XamlReader.Load (xmlReader) as DockLayout; xmlReader.Close ();
DockContenedor.Load (Layout, LoadDockItem);
However, the previous code is taken from the guide provided by the library.
Library link:
https://wpfdocking.devzest.com/articles/saving_and_loading_window_layout.html
Note: I can't see where the error is shown, because the exception is internal to the library.
with windows10 system,VS2017,and .net 4.5,run the "QuickStart" project ,drag one panel to show a separate window(NativeFloatingWindow object),minimized the main window ,then maximized the main window,drag and drop the separate NativeFloatingWindow to dock,at last the NativeFloatingWindow can't be cleared.
another,
Every time ,drag one panel to show a separate window,and then go back docking,but monitor the visual tree,the NativeFloatingWindow object more and more,it can't be destroid.
XAML setting:
dz:DockControl
<dz:DockItem TabText="Welcome" Title="Welcome" ShowAction="{dz:ShowAsDockPositionAction DockPosition=Document}">
<FlowDocumentScrollViewer.Document>
Welcome to DevZest Docking
</FlowDocumentScrollViewer.Document>
</dz:DockItem>
<dz:DockItem TabText="Saved State" Title="Saved State" ShowAction="{dz:ShowAsDockPositionAction DockPosition=Bottom}">
</dz:DockItem>
<dz:DockItem TabText="Output" Title="Output" ShowAction="{dz:ShowAsDockPositionAction DockPosition=Bottom}">
</dz:DockItem>
<dz:DockItem TabText="Solution Explorer" Title="Solution Explorer" ShowAction="{dz:ShowAsDockPositionAction DockPosition=RightAutoHide}">
</dz:DockItem>
<dz:DockItem TabText="Properties" Title="Properties" ShowAction="{dz:ShowAsDockPositionAction DockPosition=RightAutoHide}">
</dz:DockItem>
</dz:DockControl>
when start the app,the last DockItem(TabText="Properties") will show,but not hide,and then click the other area position,the DockItem come to hide.
I am loading in avalon Txt viewer in the dock, I have tried with regular txt box and a rich text box, same results. If i open a file larger than 50kb and apply the txt to the box it will lock up the application in the DevZest Docks no matter what type of dock. Now if i create a test app that i put the user control in the main window and launch there is no problem it runs at maybe 100MB. So the issue lays in the Docking since the issue only arises when place in the docks.
With project “DockSample”,modify the “MainPage.xaml” as following:
1> dz:AutoHide.Animation="Fade"
2> <local:Output x:Name="output" ShowAction="{dz:ShowAsDockPositionAction DockPosition=BottomAutoHide}" />
Then start the project “WindowDockSample” , maybe appear a fault.(try twice)
The other question:
How to group for toolpanel? Now for the right panels,just when the all right panels are setted for “RightAutoHide” or “Right” ,they are a group,if one is “Right”,the other is “RightAutoHide”,they are two group,is there the other method to group flexible?
Update the library to .NET4.5 ,run the project "QuickStart",check the real-time Visual studio's visual tree
By double click to switch between these two states(docked and floating),the NativeFloatingWindow object don’t increase,it is OK,but By drag and drop the same panel to switch between these two states(e.g. The left docking and floating),the NativeFloatingWindow object increase more and more(Operate repeat 3 times at last).
There is not effect for Property “TextTrimming” in “ToolWindowTab.xaml”.
In Visual studio’s Docking,when the toolwindow’s width is small,if the tabtext can’t be show fully,the tabtext will show with TextTrimming(CharacterEllipsis),but there is not effect in the wpfdocking ,if we modify the ColumnDefinition width from “*” to the fixed value just for test(e.g. 50),the effect appear.
So how to bring the TextTrimming effect if the tabtext can’t be show fully?
I'm not that familiar with using OneClick.
I've looked at numerous options but can't get past this error
XBAP Install Error: "Downloading ...exe.manifest did not succeed"
I've also looked here but nothing I seem to try works..
(including changing browser settings and changing AssemblyInfo.cs to use a strong named key - which I've reversed out!)
Can you perhaps add some notes for this for others. I suspect it's not an error - just my naivety.
Thanks.
请问本项目是否支持.Net Core 3.1 (VS2019)?
If you download the code, build, and run with exception settings on full, it comes up with the following error.
The word 'Aero2' is not found in any file in the source either..
ERROR:
Managed Debugging Assistant 'BindingFailure' : 'The assembly with display name 'DevZest.WpfDocking.Aero2' failed to load in the 'Load' binding context of the AppDomain with ID 1. The cause of the failure was: System.IO.FileNotFoundException: Could not load file or assembly 'DevZest.WpfDocking.Aero2, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.'
在 DevZest.Windows.Docking.Primitives.DockManager.WindowHandler.get_NativeOverlayCanvas() 在 ...\WpfDocking\Src\Windows\Docking\Primitives\DockManager.WindowHandler.cs 中: 第 118 行
I comment out TestDrop
method in IsShiftKeyDown
property in file WpfDocking\Src\Windows\Docking\Primitives\DockManager.DragHandler.cs
, it seems ok but I don't know if it has other impacts.
private bool IsShiftKeyDown
{
set
{
bool oldValue = GetIsShiftKeyDown(DockControl);
if (oldValue == value)
return;
SetIsShiftKeyDown(DockControl, value);
//TestDrop();
}
}
Inside DockLayoutAdapter, GetShowAction, the action should not return anything if the docktree is not visible. This must then be not added to the show action list.
if ((dockTree.IsFloating) && (!dockTree.IsVisible)){
return null;
}
Otherwise it will try and load a hidden floating window, and will raise exception when loading the layout.
Now when press the mouse above the ToolWindowTab object,if exceed 1 second, the ToolWindowTab object switch to the drag state, Sometimes normal switch between multiple ToolWindow object,just exceed little time press will trigger drag mode.but the visual studio’s docking is not the same,only when mouse press and move,then start drag.Can I modify to the way?
Is there a collection Property(host the all DocumentWindow) to binding the ObservableCollection?
like:
https://www.codeproject.com/Articles/351300/MVVM-TabControl
Sometimes, when you dockControl.Save(); your current layout (i.e. you have two left side panels one on top of the other) the saved XAML contains some unexpected ShowAsFloatingAction members.
When you subsequently try to dockControl.Load() your saved layout a debug assert is thrown from DockManager.WindowHandler.cs:
private void InitNativeStrategy()
{
Debug.Assert(DockControl.FloatingWindows.Count == 0);
DockControl.FloatingWindows.CollectionChanged += new NotifyCollectionChangedEventHandler(OnFloatingWindowsChanged);
}
If you ignore it and continue, whenever you try to change the dockitems layout moving around panels, the app crashes with a NullReferenceExeption:
private void ShowOverlayWindow()
{
_overlayWindow = OverlayWindow.Show(DockControl);
SetStartMousePosition(_overlayWindow, _overlayWindow.PointFromScreen(_startMousePoint));
foreach (FloatingWindow floatingWindow in DockControl.FloatingWindows)
{
NativeFloatingWindow nativeWindow = NativeFloatingWindow.GetNativeFloatingWindow(floatingWindow); //NativeFloatingWindow is null
SetStartMousePosition(nativeWindow, nativeWindow.PointFromScreen(_startMousePoint));
}
}
Anybody knows how to solve this?
when using tabcontol control (with TransitioningContentControl,refer to the MahApps.Metro library) in the DocumentWindow container,switch the several tabitem object,and then switch between the two docking ToolWindow,the docking control appear the error:size measure error.
I think because of the TransitioningContentControl.
https://github.com/MahApps/MahApps.Metro/releases
I am considering using this code in my project, but it seems unmaintained. Is anyone actively using it in a product? I found what seems a bug in the save/load code but wanted to see if anyone else out there could help test the changes.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.