Исключение TextBlock при использовании multiDataTrigger - PullRequest
1 голос
/ 18 июля 2011

Я пытаюсь добавить 2 триггера в свойство видимости текстового блока.Следующий код вызывает «исключение TextBlock».Есть идеи почему?

<TextBlock Name="tb2"
           Style="{StaticResource MyPageTextStyle}"
           Text="{x:Static res:MyResources.MyText}"
           Visibility="Collapsed"
           >
           <TextBlock.Triggers>
                    <MultiDataTrigger>
                           <MultiDataTrigger.Conditions>
                                    <Condition Binding="{BindingPath=Class1.IsBlue}" Value="true" />
                                    <Condition Binding="{Binding Path=Class1.IsGreen}" Value="false" />
                           </MultiDataTrigger.Conditions>
                           <Setter TargetName="tb2" Property="TextBlock.Visibility" Value="Visible" />
                    </MultiDataTrigger>
            </TextBlock.Triggers>
 </TextBlock>

1 Ответ

1 голос
/ 18 июля 2011

Вместо добавления триггеров в текстовый блок добавьте триггеры в стиль текстового блока ... некоторые способы добавления триггеров непосредственно к элементу управления вызовут исключения xaml ...

попробуй сделать что-нибудь подобное ...

<TextBlock Name="tb2" Visibility="Collapsed">
            <TextBlock.Style>
                <Style>
                     <Style.Triggers>
                        <MultiDataTrigger>
                               <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding Path=Class1.IsBlue}" Value="true" />
                                        <Condition Binding="{Binding Path=Class1.IsGreen}" Value="false" />
                               </MultiDataTrigger.Conditions>
                               <Setter Property="TextBlock.Visibility" Value="Visible" />
                        </MultiDataTrigger>
                     </Style.Triggers>
                </Style>
            </TextBlock.Style>
        </TextBlock>
...