Browse Source

Merge pull request #1169 from stewienj/fix_resizing_auto_sized_panel

AvalonDock fixed crash when shrinking auto-sized panel
pull/1181/head
XceedBoucherS 9 years ago
committed by GitHub
parent
commit
5596a8c7c4
  1. 16
      ExtendedWPFToolkitSolution/Src/Xceed.Wpf.AvalonDock/Controls/LayoutGridControl.cs

16
ExtendedWPFToolkitSolution/Src/Xceed.Wpf.AvalonDock/Controls/LayoutGridControl.cs

@ -386,6 +386,10 @@ namespace Xceed.Wpf.AvalonDock.Controls
{
prevChildModel.DockWidth = new GridLength(prevChildModel.DockWidth.Value * (prevChildActualSize.Width + delta) / prevChildActualSize.Width, GridUnitType.Star);
}
else if (prevChildModel.DockWidth.IsAuto)
{
prevChildModel.DockWidth = new GridLength(prevChildActualSize.Width + delta, GridUnitType.Pixel);
}
else
{
prevChildModel.DockWidth = new GridLength(prevChildModel.DockWidth.Value + delta, GridUnitType.Pixel);
@ -395,6 +399,10 @@ namespace Xceed.Wpf.AvalonDock.Controls
{
nextChildModel.DockWidth = new GridLength(nextChildModel.DockWidth.Value * (nextChildActualSize.Width - delta) / nextChildActualSize.Width, GridUnitType.Star);
}
else if (nextChildModel.DockWidth.IsAuto)
{
nextChildModel.DockWidth = new GridLength(nextChildActualSize.Width - delta, GridUnitType.Pixel);
}
else
{
nextChildModel.DockWidth = new GridLength(nextChildModel.DockWidth.Value - delta, GridUnitType.Pixel);
@ -406,6 +414,10 @@ namespace Xceed.Wpf.AvalonDock.Controls
{
prevChildModel.DockHeight = new GridLength(prevChildModel.DockHeight.Value * (prevChildActualSize.Height + delta) / prevChildActualSize.Height, GridUnitType.Star);
}
else if (prevChildModel.DockHeight.IsAuto)
{
prevChildModel.DockHeight = new GridLength(prevChildActualSize.Height + delta, GridUnitType.Pixel);
}
else
{
prevChildModel.DockHeight = new GridLength(prevChildModel.DockHeight.Value + delta, GridUnitType.Pixel);
@ -415,6 +427,10 @@ namespace Xceed.Wpf.AvalonDock.Controls
{
nextChildModel.DockHeight = new GridLength(nextChildModel.DockHeight.Value * (nextChildActualSize.Height - delta) / nextChildActualSize.Height, GridUnitType.Star);
}
else if (nextChildModel.DockHeight.IsAuto)
{
nextChildModel.DockHeight = new GridLength(nextChildActualSize.Height - delta, GridUnitType.Pixel);
}
else
{
nextChildModel.DockHeight = new GridLength(nextChildModel.DockHeight.Value - delta, GridUnitType.Pixel);

Loading…
Cancel
Save