首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据栏中的WPF设置工具提示

数据栏中的WPF设置工具提示
EN

Stack Overflow用户
提问于 2022-06-13 23:30:36
回答 2查看 80关注 0票数 0

如何绑定驻留在数据板中的控件的工具提示。

代码语言:javascript
复制
<UserControl.Resources>
    <DataTemplate x:Key="PositionAdded">`enter code here`
        <materialDesign:PackIcon x:Name="PositionInd"  Kind="TimerSandEmpty" ToolTip="{Binding XXXX }" HorizontalAlignment="Center"  Foreground="DarkOrange" Width="20" Height="20">
            <materialDesign:PackIcon.DataContext>
                <local:TestClass />
            </materialDesign:PackIcon.DataContext>
        </materialDesign:PackIcon>
    </DataTemplate>
</UserControl.Resources>

我想绑定上面图标的工具提示,动态地说是从侧列值。因此,工具提示应该显示为"4至9“的特定图标。

输出

下面是dataGrid结构:

代码语言:javascript
复制
<DataGrid x:Name="DataGridInvRecord"  SelectedItem="{Binding item,Mode=TwoWay}"  AutoGenerateColumns="False" IsReadOnly="True" >
    <DataGrid.Columns>
        <DataGridTextColumn  Header="#" Binding="{Binding SLNum}" />
        <DataGridTextColumn Header="Matterial" Binding="{Binding FPN}" />                       
        <DataGridTextColumn Header="Category" Binding="{Binding Category}" />
        <DataGridTextColumn Header="Product" Binding="{Binding Product}" />
        <DataGridTextColumn Header="Base" Binding="{Binding Base}"/>
        <DataGridTextColumn Header="Size" Binding="{Binding Size}" />
        <DataGridTextColumn Header="Available" Binding="{Binding Available}" />
        <DataGridTextColumn Visibility="Visible" Header="MinRange" Binding="{Binding MinRange}" />
        <DataGridTextColumn Visibility="Visible" Header="MaxRange" Binding="{Binding MaxRange}" />
        <DataGridTemplateColumn Header="Position" CellTemplateSelector="{StaticResource PositionTemplateSelector}" />
    </DataGrid.Columns>
</DataGrid>

非常欢迎使用完整代码的建议。谢谢!!

EN

回答 2

Stack Overflow用户

发布于 2022-06-14 01:58:34

ToolTips不是可视化树中它们关联控件的子控件,因此不继承DataContext。要绑定工具提示,需要通过中间代理类绑定,如这个职位中所解释的那样。

票数 0
EN

Stack Overflow用户

发布于 2022-06-14 11:20:18

数据板应该将项目设置为DataContext

代码语言:javascript
复制
<DataTemplate x:Key="PositionAdded">
    <materialDesign:PackIcon Kind="TimerSandEmpty" HorizontalAlignment="Center" Foreground="DarkOrange" Width="20" Height="20">
        <materialDesign:PackIcon.ToolTip>
            <MultiBinding StringFormat="{0}-{1}">
                <Binding Path="MinRange"/>
                <Binding Path="MaxRange"/>
            </MultiBinding>
        </materialDesign:PackIcon.ToolTip>
    </materialDesign:PackIcon>
</DataTemplate>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72610067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档