加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

通过WPF样式或触发器设置TaskbarItemInfo

发布时间:2020-12-14 05:36:03 所属栏目:Windows 来源:网络整理
导读:WPF 4包含一个“TaskbarItemInfo”Freezable类,它向Window添加一个附加属性,允许更改各种 Windows 7任务栏项. 特别是,我正在尝试在窗口的tasbar图标上设置进度信息.我想使用DataTrigger执行此操作,但它似乎不起作用.我尝试使用一个简单的样式设置器,但这也不
WPF 4包含一个“TaskbarItemInfo”Freezable类,它向Window添加一个附加属性,允许更改各种 Windows 7任务栏项.

特别是,我正在尝试在窗口的tasbar图标上设置进度信息.我想使用DataTrigger执行此操作,但它似乎不起作用.我尝试使用一个简单的样式设置器,但这也不起作用 – 只有直接属性赋值或直接属性绑定才有效.

例如:

<Window.Style>
    <Style>
        <Setter Property="TaskbarItemInfo.ProgressState" Value="Indeterminate" />
    </Style>
</Window.Style>

<Window.TaskbarItemInfo>
    <TaskbarItemInfo />
</Window.TaskbarItemInfo>

似乎附加属性没有通过样式设置.我通过样式设置附加属性的语法不正确,还是我错过了其他内容?

解决方法

TaskbarItemInfo不从FrameworkElement继承,因此您无需在DataTrigger中设置Style属性.

为什么不将TaskbarItemInfo的ProgressState绑定到您想要在DataTrigger中使用的属性,然后使用ValueConverter将其转换为相关的TaskbarItemProgressState.

<Window.TaskbarItemInfo>
    <TaskbarItemInfo ProgressState="{Binding YourProperty,Mode=OneWay,Converter={StaticResource ProgressStateConverter}}" />
</Window.TaskbarItemInfo>

然后,一个简单的转换器可以返回任何TaskbarItemProgressState应用于您的触发器属性.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读