使用 multiDataTrigger 时出现 TextBlock 异常

发布于 2024-11-25 01:38:48 字数 910 浏览 1 评论 0原文

我正在尝试向文本块的可见性属性添加 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>

I'm trying to add 2 triggers to the visibility property of a textblock.
The following code causes a "TextBlock exception". Any idea why?

<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>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

遗心遗梦遗幸福 2024-12-02 01:38:48

不是向文本块添加触发器,而是向文本块样式添加触发器...直接向控件添加触发器将引发 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>

Instead of adding triggers to textblock add triggers to textblock style... some how adding triggers directly to control will throw xaml exceptions...

try to do some thing like this...

<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>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文