Стиль кнопки, чтобы соответствовать текущей теме для кнопки развернуть / свернуть на TreeView - PullRequest
0 голосов
/ 16 октября 2010

Как вы знаете, все встроенные темы определяют стили для стандартных элементов управления, таких как элемент управления TreeView. Мы пытаемся создать что-то, что выглядит очень похожим на TreeView, но на самом деле не является таковым и не является его подклассом. В нем просто есть части, которые мы хотим выглядеть как единое целое.

Например, наш элемент управления также имеет выбранный элемент, фон которого мы хотели бы сопоставить с внешним видом фона для выбранного элемента в TreeView (или, точнее, TreeViewItem) для текущей темы. (Вы не можете просто использовать цвет подсветки, поскольку у тем есть красивые градиентные кисти и границы, а не только сплошная кисть.) То же самое с нашими кнопками переключения / разворачивания. Мы хотим, чтобы они выглядели так же, как те, что используются в TreeView для текущей темы. (то есть иногда треугольник, иногда прямоугольник с «+» и т. д.)

Теперь, когда мы можем просто разорвать Expression и скопировать стили сами (или, по крайней мере, те части, которые нам нужны), нам придется делать это для каждой темы, которую предоставляет MS. Кроме того, это не будет обрабатывать новые темы. И с чистой точки зрения, это дублирующая информация о стилях, которая просто ошибается со мной.

Также, если кто-то стилизует фактический TreeView (Item), мы также хотим его забрать. Так как части, которые мы хотим стилизовать, являются необходимыми частями TreeView, мы уверены, что они где-то в стиле.

Даже не уверен, что то, что я хочу сделать, возможно, но если кто-то знает, они, скорее всего, здесь, на SO!

1 Ответ

0 голосов
/ 10 ноября 2010

Еще один вопрос, которому почти месяц, даже без комментариев. Очень странно, чтобы сообщество SO не принимало участие хотя бы один раз! Думаю, это невозможно.

Итак, в итоге мы использовали «Show Me The Template» (Google it), чтобы получить шаблоны для части (у нас нет Expression), а затем вручную управляли ими вместо использования встроенного стили. НЕ совсем то, что мы хотели сделать, так как мы не знаем, как получить хорошие градиенты, которые уже определены в системе, без их дублирования, но конечный результат действительно идеально совпадает, так что это так. Таким образом, это тоже помечается как ответ. Я с радостью поменяю его, если кто-то действительно даст мне тот, который работает (или достаточно близко! Просто нужно что-то человек! Чувствую, что я пишу здесь в вакууме!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...