Визуализация элементов Silverlight во время разработки в Expression Blend 2
-
08-07-2019 - |
Вопрос
Я работаю над некоторыми элементами управления Silverlight и хотел бы явно обработать способ их отображения в Blend. В частности, эти элементы управления имеют зависимости, которые инициализируются во время выполнения и, следовательно, генерируют исключения в конструкторе. Но даже в отсутствие исключения я бы хотел, чтобы они выглядели определенным образом в Blend.
Я знаю, что это возможно с WPF (с использованием myassembly.VisualStudio.Design.dll), но я не смог найти информацию о том, как это сделать с помощью Silverlight.
Я видел взлом, описанный здесь , который проверяет, делает это:
bool designTime = (System.Windows.Browser.HtmlPage.IsEnabled == false);
Я бы предпочел более явное решение.
Решение
В как бороться с расширением времени проектирования здесь . Там вы узнаете, как создавать Visual Studio и Blend для разработки Silverlight. Р>
Поставщики элементов управления и люди, которые создают пользовательские элементы управления, часто хотят, чтобы они могли лучше использовать их. Тем не менее, существует огромная нехватка публичной информации по этой теме. И я решил исправить эту ситуацию с помощью этой короткой статьи на 50 страниц. Р>
Как я уже сказал, это долго. :) Р>
Другие советы
Определенный атрибут для проверки - DesignerProperties
:
using System.ComponentModel.DesignerProperties
if (DesignerProperties.GetIsInDesignMode(this))
{
}
где this
является DependencyObject
(любой визуальный элемент).