是否有 Windows (Phone) 等同于 Android 选择器?

Is there a Windows (Phone) equivalent of the Android selector?

Android xml 对于作为选择器的按钮(和其他东西)状态有好处。

这是 Android 文档的示例:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"
    android:constantSize=["true" | "false"]
    android:dither=["true" | "false"]
    android:variablePadding=["true" | "false"] >
    <item
        android:drawable="@[package:]drawable/drawable_resource"
        android:state_pressed=["true" | "false"]
        android:state_focused=["true" | "false"]
        android:state_hovered=["true" | "false"]
        android:state_selected=["true" | "false"]
        android:state_checkable=["true" | "false"]
        android:state_checked=["true" | "false"]
        android:state_enabled=["true" | "false"]
        android:state_activated=["true" | "false"]
        android:state_window_focused=["true" | "false"] />
</selector>

我们可以使用 XAML 或 C# 中的某些内容在 Windows (Phone) 应用程序上获得相同的效果。 (或者就此而言,通用应用程序)。

现在我使用 Listeners GotFocus、LostFocus 等。但我认为这不是一个简单的解决方案。

有人对如何执行此操作有更好的想法吗?

您可以完全在xaml中定义控件的完整多状态布局。 为按钮定义自定义样式并设置Template 属性。不幸的是,这完全覆盖了模板,因此您可能必须复制默认模板。在那里你可以为 PressedMouseOver 等设置不同的 VisualStates

要获得按钮默认样式,请按照此处所述使用 Blend:http://www.geekchamp.com/tips/windows-phone-button-default-style

有关自定义按钮模板的更多信息:http://www.geekchamp.com/tips/custom-styles-and-templates-in-windows-phone-button