使用多个绑定属性定义ToolTip

时间:2017-10-24 08:39:37

标签: wpf binding tooltip

这是我的Dodel

public string Name { get; set; }
public string Id { get; set; }
public string Age { get; set; }
public string Description { get; set; }

这是我的ListView列:

   <GridViewColumn Header="Name">
        <GridViewColumn.CellTemplate>
            <DataTemplate>
                    <TextBlock x:Name="textBlock"
                               Text="{Binding Description}"
                               ToolTip="{Binding Description}"/>
            </DataTemplate>
        </GridViewColumn.CellTemplate>
    </GridViewColumn>

所以如果我想在我的ToolTip所有属性中看到例如:

name + "\n" + Id + "\n" + Age + + "\n" + Description

2 个答案:

答案 0 :(得分:1)

为什么不在模型中添加新的字符串类型属性,并在构造函数中组合所有这些属性。

如果你真的想这样做,this可以帮到你。

答案 1 :(得分:1)

以下是我为此所做的事情:

<DataTemplate>
    <DataTemplate.Resources>
        <ToolTip x:Key="Tip">
            <TextBlock>
                <Run Text="{Binding Name}"/>
                <LineBreak/>
                <Run Text="{Binding Age, StringFormat='Age: {0}'}"/>
            </TextBlock>
        </ToolTip>
    </DataTemplate.Resources>
    <TextBlock Text="{Binding Description}" ToolTip="{StaticResource Tip}"/>
</DataTemplate>  

我使用了Runs,因此您可以在完全自定义之后将名称和其他属性绑定在另一个上。