Browse Source

Fixed StackPanelPlacementSupport.ChangePositionTo().

http://community.sharpdevelop.net/forums/t/13865.aspx
4.2
Daniel Grunwald 13 years ago
parent
commit
a2f42f2665
  1. 17
      src/AddIns/DisplayBindings/WpfDesign/WpfDesign.Designer/Project/Extensions/StackPanelPlacementSupport.cs

17
src/AddIns/DisplayBindings/WpfDesign/WpfDesign.Designer/Project/Extensions/StackPanelPlacementSupport.cs

@ -109,19 +109,20 @@ namespace ICSharpCode.WpfDesign.Designer.Extensions
DrawVerticalRectangle(offset); DrawVerticalRectangle(offset);
} }
ChangePostionTo(info.Item.View, _indexToInsert); ChangePositionTo(info.Item, _indexToInsert);
} }
} }
private void ChangePostionTo(UIElement element, int index) private void ChangePositionTo(DesignItem element, int index)
{ {
int elementIndex = 0; if (this.ExtendedItem.ContentProperty == null || !this.ExtendedItem.ContentProperty.IsCollection)
if (_stackPanel.Children.Contains(element)) return;
elementIndex = _stackPanel.Children.IndexOf(element); var elements = this.ExtendedItem.ContentProperty.CollectionElements;
if (index > elementIndex) int elementIndex = elements.IndexOf(element);
if (elementIndex >= 0 && index > elementIndex)
index--; index--;
_stackPanel.Children.Remove(element); elements.Remove(element);
_stackPanel.Children.Insert(index, element); elements.Insert(index, element);
} }
private double FindHorizontalRectanglePlacementOffset(Rect rect) private double FindHorizontalRectanglePlacementOffset(Rect rect)

Loading…
Cancel
Save