【问题标题】:RelativeSource FindAncestor issueRelativeSource FindAncestor 问题
【发布时间】:2010-11-22 07:18:46
【问题描述】:

代码如下:

<GridViewColumn DisplayMemberBinding="{Binding Path=BookId}" Width="100">
    <GridViewColumn.Header>
        <Border BorderBrush="Black">
            <TextBlock Width="{Binding RelativeSource=
                                       {RelativeSource FindAncestor, 
                                       AncestorType={x:Type GridViewColumn}}, 
                                       Path=Width}" Text="ID">
                <TextBlock.ContextMenu>
                    <ContextMenu>item1</ContextMenu>
                </TextBlock.ContextMenu>
            </TextBlock>
            </Border>
    </GridViewColumn.Header>
</GridViewColumn>

基本上我要做的是使标题中的 TextBlock 遵循整个列的宽度。

它不起作用:文本块的宽度总是与里面的文本匹配。有任何想法吗?... 提前致谢!

【问题讨论】:

    标签: wpf listview binding relativesource


    【解决方案1】:

    你的代码有两个问题

    1. GridViewColumn 不是 TextBox 的视觉祖先,它的祖先是 GridViewColumnHeader
    2. 你应该绑定到GridViewColumnHeader的ActualWidth,而不是Width(如果没有指定Width,它将是一个无效的数字)

    所以你的代码变成了:

                  <GridViewColumn
                                DisplayMemberBinding="{Binding Path=BookId}"
                                Width="100">
                    <GridViewColumn.Header>
                        <Border BorderBrush="Black" >
                            <TextBlock Text="ID" Width="{Binding RelativeSource=
                                                            {RelativeSource FindAncestor, 
                                                            AncestorType={x:Type GridViewColumnHeader}}, 
                                                            Path=ActualWidth}">
                                <TextBlock.ContextMenu>
                                    <ContextMenu>item1</ContextMenu>
                                </TextBlock.ContextMenu>
                            </TextBlock>
                            </Border>
                    </GridViewColumn.Header>
                </GridViewColumn>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-25
      • 2011-01-18
      • 1970-01-01
      • 2011-11-18
      • 2011-03-19
      • 2011-03-12
      • 1970-01-01
      • 2013-03-07
      相关资源
      最近更新 更多