В Silverlight (и, вероятно, WPF), когда я определяю System.Windows.Interactivity.Behavior<T>
, например. ItemsControl
, какОграничение видимости видимости Silverlight/WPF
public class SomeAwesomaticBehavior : Behavior<ItemsControl>
{
}
появится в редакторе XAML Visual Studio (и, вероятно, в конструкторе тоже) даже для обычного, не являющихся пунктов-Controls и выбросить неприятные исключения во время выполнения. Это противоречит прилагаемым свойствам, которые будут отображаться только для определенных типов.
Есть ли способ ограничить эту видимость? Возможно, какой-то магический атрибут (хотя это было бы избыточным объявлением)?
Если сегодня нет способа, я надеюсь, что так будет и в будущем? Потому что он наверняка путает коллег и дизайнеров, когда появляется много Behaviors, которые не имеют никакого отношения к текущему объекту.
Обновление: я подал элементы пользовательского обслуживания.
Вау, наконец, ответ после всех этих лет, спасибо. Я уже подозревал, что нет способа. Я пишу многократно используемое и очень общее поведение, но все же есть некоторые случаи, которые не всегда имеют смысл для всех типов DependencyObject. Итак, я думаю, что сейчас собираюсь подать заявку на функцию. – herzmeister