Я моделирую шаблон присоединенной команды после библиотеки AttachedCommandBehavior здесь .Моя кнопка выглядит следующим образом:
<Button>
<Button.Style>
<Style TargetType="{x:Type Button}">
<Setter Property="vms:Attached.Behaviors">
<Setter.Value>
<vms:Behaviors>
<vms:Behavior Event="Click"
Command="{Binding ClickCommand}" />
</vms:Behaviors>
</Setter.Value>
</Setter>
</Style>
</Button.Style>
</Button>
Все отлично работает, но когда выполняется установщик на Behavior
, команда имеет значение null
.
Поведение - это Freezable
, а Поведение - это FreezableCollection<Behavior>
.Кажется, он просто не наследует DataContext от Button.
С другой стороны, это работает правильно:
<Button>
<vms:Attached.Behaviors>
<vms:Behavior Event="Click" Command="{Binding ClickCommand}" />
</vms:Attached.Behaviors>
</Button>
К сожалению, я не могу сделать это таким образом, потому чтоМне нужно нацелиться на сгенерированные ListViewItem
s, используя ItemContainerStyle
.
Есть ли способ получить DataContext в стиле?