2016-05-11 4 views
0

В моем коде у меня есть несколько изображений, которые пользователь нажимает на панель. Куда бы пользователь не щелкнул рамку с изображением. Место хранится в базе данных, так что оно может быть вызвано позже.Динамически окружающие элементы управления C#

Когда пользователь нажимает на картинку, он изменяет свойство backcolor на красный, чтобы создать впечатление, что оно выделено.

Моя проблема заключается в том, что я хочу добавить групповой ящик (или другой метод окружения) вокруг выделенных полей. Таким образом, пользователь нажимает четыре изображения и щелкает кнопку «Surround», и он рисует групповой пакет вокруг этих 4 pb. Но я в недоумении, так как я не знаю, как получить расположение внешних картинок (те, которые группа должна окружить), поскольку все они выполняются «на лету»?

Любые советы были бы замечательными.

+1

Что делать, если в этой области есть несколько картинок, где некоторые из них выбраны, а другие нет? Вы хотите переместить невыделенные поля вне группы? –

+0

Привет Тим, маловероятно, что это так, представьте приложение для ресторана, где вы выровняете набор таблиц, а затем назначьте эти таблицы в раздел. У вас не было бы стола из одной секции в середине другого – User9123

ответ

1

Возможно, у вас есть список всех изображений в вашем приложении где-нибудь (если вы разместите их внутри контейнера, это будет Children). Я предлагаю вам простую foreach через все ящики для изображений и найти минимальные/максимальные координаты, и оттуда вы можете легко получить координаты для окружающего поля. Возможно, вы сможете сделать все, используя один запрос LINQ.

Смежные вопросы