【发布时间】:2012-09-13 23:25:42
【问题描述】:
在 GridView(Metro 风格的 XAML 应用程序)中,我希望我的一个图块上有一个 VCR 风格的“暂停”图标。但是当用户将鼠标悬停在按钮上(用鼠标)或按下按钮时,我希望图标变为“播放”。 (我想给出一些微妙的暗示来强化它现在暂停的想法,但按下按钮将开始播放。)
如何检测鼠标是否在磁贴上方,以及是否按下磁贴,从而更改磁贴的外观?
理想情况下,我想挂接到磁贴的 VisualStateManager。但是我还是 VisualStateManager 的新手,当我编辑我的 ItemTemplate 时,我看不到任何可用的视觉状态。 (Blend 的“状态”停靠窗口是空的。)
如果我制作 ItemContainerTemplate 的副本并对其进行编辑,那么我可以获取磁贴的视觉状态。但这似乎 难以置信 矫枉过正。它在大量 XAML 上增加了很多(因为这意味着复制任何地方的任何图块支持的每一个功能)。这意味着如果微软在 Windows 8 发布之前做出任何更改,我将不得不重新进行更改。
有没有更轻量级的方法来改变我的磁贴在“指针悬停”和“按下”状态下的外观?
【问题讨论】:
标签: gridview winrt-xaml visualstatemanager