2012-01-06 6 views
1

Есть ли способ установить визуальное состояние элемента управления во время разработки в Miscrosoft Blend?Настройка визуального состояния элемента управления во время разработки

(Например, устанавливающего состояние TextBox в «Disabled», чтобы можно было увидеть отключенный TextBox на поверхности дизайна)

Заранее спасибо :)

ответ

1

правой кнопкой мыши ваш TextBox и выберите " «Редактировать шаблон» -> «Редактировать копию» и разбить шаблон в словаре ресурсов или где угодно, как правило, новый словарь ресурсов - это хорошее место. Это приведет вас к шаблону для этого элемента управления, затем перейдите на вкладку «Штаты» (обычно верхний левый угол в смешении), и он покажет различные состояния вашего элемента управления, включая отключенные, и выставляет объекты, которые создают ваш элемент управления.

Все эти вещи также, конечно, находятся в коде VisualStateManager, но просмотр состояний в шаблоне - это самый простой маршрут с визуальными интерпретациями состояний, которые можно просмотреть при нажатии на них. Когда вы нажимаете вокруг состояний, обратите внимание на маленькие красные точки, которые появляются на ваших объектах в ваших объектах. & панель временной шкалы, чтобы увидеть, какие элементы взаимодействуют с этим состоянием. Делает вещи намного легче. Надеюсь, что это поможет, если не определить дальше, и мы получим правильную настройку. Cheers Marc. :)

+0

О, да, и если вы просто пытаетесь увидеть, как выглядит состояние с отключенным состоянием, пока он не справляется с проблемой, просто добавьте IsEnabled = "False" в xaml .... думал, что добавлю, что , –

+0

Hey Chris :) Кажется, что вы мой личный агент-ответ на этот раз :) Что касается вопроса: я уже определил визуальное состояние своего контроля внутри его шаблона управления (с VSM). Все работает очень хорошо - я могу построить столько состояний, сколько захочу. Но когда я оставляю VSM, возвращаясь к моей обычной поверхности дизайна, я буду видеть только свои элементы управления в своем «базовом» состоянии (а не в их «нормальном»). Теперь то, что я на самом деле хочу, это увидеть их в состоянии «Отключено», находясь на стандартной поверхности дизайна Blend. Вы теперь имеете в виду? Если нет, я снова переформулирую;) так долго, ... –

+0

Другой способ сформулировать мою проблему: как установить начальное состояние элемента управления, в котором он должен быть загружен при запуске? –

2

Что я использую, используя MVVM, является привязка состояния, которое я хочу контролировать, чтобы создать свойство в моей ViewModel. Я использую MVVMLight как свою структуру MVVM, там вы получили свойство IsInDesignMode, которое вы можете проверить снова, и задайте нужные свойства времени разработки.

Надеюсь, это поможет.

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