1

我试图使用一个按钮来触发事件,以告诉 ListView 每次自动调整其列的大小。

我使用了不同的方法,但它们都不起作用,事件在 ListView 内定义的这段代码中,我试图通过 DataBinding 从 Button 触发 ListView 采取行动(IsPressed)。

当我尝试执行代码时,出现以下错误 XML 命名空间“ http://schemas.microsoft.com/winfx/2006/xaml/presentation ”中不存在标记“绑定”。

我以错误的方式执行 DataBinding?这段代码会以这种方式工作吗?提前致谢!

  <ListView.Style>
      <Style>
          <Style.Triggers>
              <Trigger  Binding = "{Binding ElementName=Button1,Path=IsPressed}"  Value="True">               
                  <Setter   Property="GridViewColumn.Width" Value="Auto"/>                          
              </Trigger>
          </Style.Triggers>    
      </Style>
  </ListView.Style>
4

2 回答 2

2

要将 a 绑定Trigger到元素范围之外的属性,请使用DataTrigger

例子:

<DataTrigger Binding="{Binding ElementName=Button1, Path=IsPressed}" Value="True">
   <Setter Property="GridViewColumn.Width" Value="Auto"/>                          
</DataTrigger>
于 2013-10-29T08:47:40.270 回答
0

常规触发器(属性触发器)仅响应您现在正在尝试的依赖属性:

<Style.Triggers>
  <Trigger  .....

使用DataTrigger,可以绑定另一个控件

<Style.Triggers>
  <DataTrigger Binding="{Binding
于 2013-10-29T09:38:29.310 回答