Ограничить видимость поведения Silverlight / WPF

В Silverlight (и, вероятно, WPF), когда я определяю System.Windows.Interactivity.Behavior , например, для ItemsControl , например

public class SomeAwesomaticBehavior : Behavior
{
}

it будет отображаться в редакторе XAML Visual Studio (и, вероятно, в конструкторе) даже для обычных элементов управления, не относящихся к элементам, и вызывать неприятные исключения времени выполнения. Это противоречит вложенным свойствам, которые будут отображаться только для предполагаемых типов.

Есть ли способ ограничить эту видимость? Может быть, какой-нибудь магический атрибут (хотя это было бы избыточным объявлением)?

Если нет возможности сегодня, я надеюсь, так будет и в будущем? Потому что это, безусловно, сбивает с толку коллег и дизайнеров, когда появляется множество поведений, которые не имеют ничего общего с текущим объектом.

Обновление: я зарегистрировал элементы голоса пользователя.

Silverlight: http: // dotnet. uservoice.com/forums/4325-silverlight-feature-suggestions/suggestions/1224253-restrict-behavior-visibility?ref=title

WPF: http://dotnet.uservoice.com/forums/40583-wpf -feature-предложения / предложения / 1224259-restrict-behavior-visibility? ref = title

6
задан herzmeister 15 November 2010 в 16:11
поделиться