将datatemplate中的元素绑定到父级属性

时间:2017-11-20 15:37:19

标签: c# .net xaml uwp

如何将模板内的元素绑定到其父元素的属性,如:

<Button Tag="rofl">
   <Button.ContentTemplate>
      <DataTemplate>
         <TextBlock Text="{ HERE I WANT TO BIND TO THE BUTTONS TAG }"/>
      </DataTemplate>
   </Button.ContentTemplate>
</Button>

这可能吗?

2 个答案:

答案 0 :(得分:1)

除了@Pedro Lamas的答案,您还可以通过以下方式执行此操作:

        <Button x:Name="ButtonTemplate" Tag="rofl">
            <Button.ContentTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Tag, ElementName=ButtonTemplate}"/>
                </DataTemplate>
            </Button.ContentTemplate>
        </Button>

您可以为控件定义名称,并通过ElementName功能在其DataTemplate中访问它的属性。

答案 1 :(得分:0)

您应该能够TemplatedParent使用<TextBlock Text="{Binding Tag, RelativeSource={RelativeSource TemplatedParent}"/> 来执行此操作:

  UserBookmark.objects.filter(tag__in = ['Java','Android'])