#c# #silverlight #xaml #silverlight-4.0
#c# #silverlight #xaml #silverlight-4.0
Вопрос:
Мне нужно реализовать склеивание объектов друг с другом. Если объекты пересекают границы. прикреплять друг к другу.
объекты пересекают границы
объекты, прикрепленные
или он должен реализовывать код?
Комментарии:
1. Сделайте себе одолжение и получите больше ответов на свои вопросы, включив в свои вопросы тег, не зависящий от версии
silverlight
.
Ответ №1:
необходимо реализовать код
Код должен быть функциональным, но насколько может варьироваться. Лично я бы использовал больше кода в этом случае.
Я бы концептуально отделил красные прямоугольники от зеленых границ. Красный прямоугольник представляет один элемент, который может быть прикреплен к другому, а может и не быть. Зеленые границы будут содержать горизонтально ориентированные StackPanel
и представляющие собой набор элементов, которые прикреплены друг к другу.
Изначально ни один элемент не прикреплен ни к какому другому, следовательно, все существующие в нем собственные зеленые рамки, представляющие прикрепленные элементы, группируют все, имеющие только один элемент.
Когда вы «прикрепляете» элемент к другому, красный прямоугольник, представляющий один из элементов, удаляется из существующей панели стека и добавляется в панель стека, содержащую другой. Теперь пустая зеленая граница удаляется из поля зрения.