public virtual TAttribute GetTriggerAttributeOrNull <TAttribute>() { var triggerBinding = InputBindings.SingleOrDefault(p => p.Metadata.IsTrigger); if (triggerBinding != null) { ExtensionBinding extensionBinding = triggerBinding as ExtensionBinding; if (extensionBinding != null) { return(extensionBinding.Attributes.OfType <TAttribute>().SingleOrDefault()); } } return(default(TAttribute)); }