WPF Layer Control - PullRequest
       23

WPF Layer Control

3 голосов
/ 30 января 2009

Мне нужен элемент управления слоя WPF, который выполняет следующие действия:

1) Наличие нескольких слоев контента друг над другом.

2) Возможность включать / выключать слои во время разработки и выполнения, то есть нам нужен пользовательский интерфейс, может быть, что-то вроде элемента управления с вкладками

3) Перемещение слоев вверх / вниз по стеку

4) Изменить непрозрачность для слоев

Теперь я знаю, что все вышеперечисленное возможно в Xaml / WPF. Я написал простую версию, используя сетку, которая имеет несколько ячеек во время разработки, 1 ячейка = 1 слой и только одну ячейку во время выполнения, все ячейки объединены в одну. Дело в том, что это был клочок, не дававший мне контроль времени проектирования, который мне был нужен, все элементы управления заканчивались одним родителем, безобразно. Кто-нибудь получил готовый или неполный рабочий пример - если нет, я напишу правильный код и поделюсь им с CodePlex.

Я уверен, что я не единственный человек, которому нужна эта функциональность, не так ли?

1 Ответ

5 голосов
/ 30 января 2009

С моим предыдущим клиентом мы сделали это с помощью Canvases. Приложение было «САПР», как по своей природе, поэтому наши слои отвечали за графическое представление домена.

Я не знаю ни одного стороннего инструмента, который бы выполнял это в данный момент.

Я думаю, что причина этого в том, что когда вы ищете эту функцию, она очень специфична для домена и приложения.

Если бы вы собирались создать свой собственный элемент управления, я бы рекомендовал создать собственный элемент управления для управления логикой, а затем позволить другим стилизовать внешний вид. Это было бы больше WPF способ решения проблемы.

Таким образом, если 1 потребитель хочет использовать холсты, он может. Если вы хотите использовать сетку, то вы тоже можете.

Если у вас есть какой-либо псевдо-код того, что вы хотели бы сделать, я могу посмотреть, можно ли изменить какой-либо из моих старых POC для удовлетворения ваших потребностей. Или, если вы хотите начать проект CodePlex, я бы не отказался от участия.

Это только мои 2 цента.

...