2015-05-24 105 views
0

我想有一个文本框出现在我的游戏的赢家结束。我在文本属性上使用了一个触发器来完成此操作,该属性将可见性设置为空时处于折叠状态。接下来,我尝试在此文本框中添加边框。当我的文本框,然而崩溃(所以当游戏仍在继续),文本框是无形前,但边界已经显示在屏幕上的一个小黑匣子。隐藏边框当文本框为空

有谁知道我可以隐藏边框,直到它包含的文本框是不是空的?

在此先感谢。

<Border BorderBrush="Black" BorderThickness="2" Canvas.ZIndex="2" Canvas.Left="160" Canvas.Top="225" Background="White"> 
     <TextBlock FontFamily="Helvetica" FontSize="20" FontWeight="Bold" 
        Text="{Binding WinnerPopup.Value}" Foreground="{Binding WinnerPopup.Value, Converter={StaticResource ownerConverter}}" Padding="15"> 
      <TextBlock.Style> 
       <Style TargetType="TextBlock"> 
        <Style.Triggers> 
         <Trigger Property="Text" Value=""> 
          <Setter Property="Visibility" Value="Collapsed" /> 
         </Trigger> 
        </Style.Triggers> 
       </Style> 
      </TextBlock.Style> 
     </TextBlock> 
    </Border> 

回答

2

您可以使用下面的技巧也塌陷边界时的TextBlock被倒塌:

<Border Canvas.Left="160" 
      Canvas.Top="225" 
      Background="White" 
      BorderBrush="Black" 
      BorderThickness="2" 
      Canvas.ZIndex="2" 
      Visibility="{Binding Visibility, 
           ElementName=myTextBlock}"> 
     <TextBlock x:Name="myTextBlock" 
        FontFamily="Helvetica" 
        FontSize="20" 
        FontWeight="Bold" 
        Foreground="{Binding WinnerPopup.Value, 
             Converter={StaticResource ownerConverter}}" 
        Padding="15" 
        Text="{Binding WinnerPopup.Value}"> 
      <TextBlock.Style> 
       <Style TargetType="TextBlock"> 
        <Style.Triggers> 
         <Trigger Property="Text" Value=""> 
          <Setter Property="Visibility" Value="Collapsed" /> 
         </Trigger> 
        </Style.Triggers> 
       </Style> 
      </TextBlock.Style> 
     </TextBlock> 
    </Border> 
+0

这解决了它,非常感谢! –