静态资源中的数据触发器

Data trigger in static resource

我想制作一个模板样式,我可以将其用作静态资源,如下所示:

<TextBox 
  Style="{StaticResource CollapsingTextBox}"
  Text="{Binding SomeNullableValue}" />

顾名思义,当绑定值为 null 时,我希望文本框折叠起来。通常我会使用数据触发器来执行此操作,如下所示:

<DataTrigger Binding="{Binding SomeNullableValue}" Value="{x:null}">
    <Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>

但是如果我将数据触发器移动到模板样式,可以重复使用,那么我直接绑定到绑定属性(即SomeNullableValue)是不好的。相反,我需要绑定模板用户的绑定(如果有意义的话)。

如何实现这种绑定?

尝试使用 Text 属性:

的触发器
<Trigger Property="Text" Value="">
    <Setter Property="Visibility" Value="Collapsed" />
</Trigger>
<Trigger Property="Text" Value="{x:null}">
    <Setter Property="Visibility" Value="Collapsed" />
</Trigger>