【问题标题】:How to Change Property by Trigger in UWP app如何在 UWP 应用中通过触发器更改属性
【发布时间】:2021-10-04 19:58:12
【问题描述】:

我想在 wpf 中 Text 属性为 null 或为空时更改 TextBlock 的可见性,我们可以轻松做到这一点:

<Style TargetType = "TextBlock"> 
         <Setter Property = "Visibility" Value = "Visibile" /> 
         <Style.Triggers> 
            <Trigger Property = "Text" Value = ""> 
               <Setter Property = "Visibility" Value = "Collapsed" /> 
            </Trigger> 
         </Style.Triggers> 
      </Style> 

但是触发器在 uwp 中不可用,我如何在 uwp 中做到这一点?

【问题讨论】:

    标签: c# uwp triggers winui


    【解决方案1】:
     <Interactivity:Interaction.Behaviors>
        <Core:DataTriggerBehavior Binding="{Binding Text, ElementName=txt}" ComparisonCondition="Equal" Value="">
            <Core:ChangePropertyAction TargetObject="{Binding ElementName=txt}" PropertyName="Visibility" Value="Collapsed" />
        </Core:DataTriggerBehavior>
     </Interactivity:Interaction.Behaviors>
    

    【讨论】:

      【解决方案2】:

      您可以在初始化时检查TextBlock 的内容并相应地更改其可见性,如下所示:

      public MainPage()
          {
              this.InitializeComponent();
              if (YourTextBlock.Text == "")
              {
                  YourTextBlock.Visibility = Visibility.Collapsed;
              }
              else
              {
                  YourTextBlock.Visibility = Visibility.Visible;
              }
          }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-09-18
        • 2018-07-21
        • 1970-01-01
        • 1970-01-01
        • 2013-04-11
        • 1970-01-01
        • 2015-10-20
        • 2019-07-16
        相关资源
        最近更新 更多