Повторное открытие монады исследователями функционального программирования. Монада способствовала разрешению чистого, ленивого языка (Haskell) для становления практическим инструментом; это также влияло на дизайн combinator библиотек (одноместный синтаксический анализатор combinators даже нашли свой путь в Python).
Moggi "Теоретическая категорией учетная запись программных модулей" (1989) обычно приписывают обеспечение монад в представление для effectful вычисления; работа Wadler (например, "Обязательное функциональное программирование" (1993)) представленные монады как практический инструмент.
Попробуйте следующее:
<Style TargetType="{x:Type StackPanel}" BasedOn="{StaticResource {x:Type StackPanel}}">
<!-- ... -->
</Style>
Я объявил свои базовые стили в ResourceDictionary в App.xaml, если я переопределю их в конкретном окне, как это, это обычно работает.
Я бы предположил, что здесь вы можете искать основной стиль или сценарий поведения, который обычно достигается путем создания пользовательского элемента управления. Если бы вам нужно было создать новый элемент управления «кнопка» с примененным к нему вашим «глобальным» стилем, то где бы вы ни использовали этот элемент управления, вы могли бы просто добавить любые стили « New или переопределить стили, если / когда они были необходимы.
Если вы не создали пользовательский элемент управления, их легко реализовать.