У меня есть следующие DependencyProperty
:МОФ - обновлён свойство зависимостей не стреляя связывания
public bool IterationSelected
{
get { return (bool)GetValue(IterationSelectedProperty); }
set { SetValue(IterationSelectedProperty, value); }
}
public static readonly DependencyProperty IterationSelectedProperty =
DependencyProperty.Register("IterationSelected", typeof(bool),
typeof(MainMediator), new UIPropertyMetadata(false));
(это был создан из шаблона VS)
Я тогда это DataTrigger
, который обновляет его:
<Grid.Style>
<Style>
<Style.Triggers>
<DataTrigger Value="True">
<DataTrigger.Binding>
<MultiBinding Converter="{StaticResource IsOpenFalseAndIsCheckedTrueMultiConverter}">
<Binding ElementName="popSelectIteration" Path="IsOpen"/>
<Binding ElementName="chkIteration" Path="IsChecked"/>
</MultiBinding>
</DataTrigger.Binding>
<Setter Property="loc:MainMediator.IterationSelected" Value="True"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
Наконец, у меня есть этот Grid
, который имеет видимость, зависящую от свойства.
<Grid Visibility="{Binding IterationSelected, Converter={StaticResource BooleanToVisibilityConverter}, diagnostics:PresentationTraceSources.TraceLevel=High}" Grid.Row="1">
<TextBlock>Testing 1323</TextBlock>
</Grid>
Итак, вот проблема, я использовал: diagnostics:PresentationTraceSources.TraceLevel="High"
испытать все привязок и все работает отлично, за исключением того, когда loc:MainMediator:IterationSelected
получает значение ИСТИНА, то Grid
не делает погрузку на него. Ничего не срабатывает. Дело не в том, что оно не может связываться или что-то в этом роде. Он просто даже не пытается. Единственный раз, когда Grid
обязательные огни находятся в начале приложения. В это время он стреляет и правильно оценивает.
Единственное, что я пробовал (и не удалось), делал IterationSelected
вложенным свойством вместо свойства простой зависимости. Однако это тоже не удалось.
WPF Гуру, любые идеи?