2

我在 WPF 应用程序中有一个显示一列的 DataGrid。我想要一个显示每行所有数据的提示。是这样的(这有效):

<DataGridTextColumn Header="ScreenName" Binding="{Binding Name}" >
    <DataGridTextColumn.CellStyle>
        <Style TargetType="DataGridCell">
            <Setter Property="ToolTip" Value="{Binding Name}" />
        </Style>
    </DataGridTextColumn.CellStyle>
</DataGridTextColumn>

如果我将绑定更改为另一个属性(如 Value="{Binding Age}")也可以,在工具提示中显示年龄。在我的 Setter 中,如何绑定所有数据以显示在单个工具提示中?姓名、年龄、城市、生日、更多数据...

4

2 回答 2

1

您还可以使用多重绑定:

   <Setter.Value>
        <MultiBinding StringFormat="{0} {1} {2}">
            <Binding Age />
            <Binding Name />                                        
            <Binding City />
        </MultiBinding>
    </Setter.Value>
于 2013-09-10T14:01:38.737 回答
1

您将不得不使用转换器

   <Setter Property="ToolTip" Value="{Binding Converter={StaticResource MyConverter}" />

    public class MyConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            //Create your string here from properties
            return tooltiptext;
        }

        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            return value;
        }
    }
于 2013-09-10T13:59:57.073 回答