В Silverlight (и, вероятно, WPF), когда я определяю System.Windows.Interactivity.Behavior<T>
, например, ItemsControl
, как
public class SomeAwesomaticBehavior : Behavior<ItemsControl>
{
}
он появится в редакторе XAML в Visual Studio (и, вероятно, в Designer) даже для обычных элементов управления, отличных от Items, и будет выдавать неприятные исключения во время выполнения. Это противоречит присоединенным свойствам, которые будут отображаться только для предполагаемых типов.
Есть ли способ ограничить эту видимость? Может быть, какой-то магический атрибут (хотя это было бы избыточным объявлением)?
Если сегодня нет пути, надеюсь, так будет и в будущем? Потому что это, безусловно, сбивает с толку коллег и дизайнеров, когда появляется много Поведений, которые не имеют никакого отношения к текущему объекту.
Обновление: я подал элементы счета пользователя.
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-suggestions/suggestions/1224259-restrict-behavior-visibility?ref=title