转自:http://msdn.microsoft.com/zh-cn/library/windowsphone/develop/ff941094(v=vs.105).aspx
适用于: Windows Phone 8 | Windows Phone OS 7.1
Windows Phone 控件的倾斜效果为您提供了为控件交互添加其他视觉反馈的能力。具有倾斜效果的控件在操作期间提供运动,而不具有标准的按压或取消按压状态。结果为“倾斜”,就像触摸控件时的响应一样。本主题讨论倾斜效果的体系结构和实现。
倾斜效果是一个自定义依赖项属性 (IsTiltEnabled),可以将该属性添加到控件(如 Button)。该依赖项属性是在名为 TiltEffect.cs 的自定义类文件中定义的。该文件还提供在控件上创建视觉上的“倾斜”效果所需的代码。点按某个项时,TiltEffect 类将搜索启用该属性的指定控件并应用该效果。您可以全局应用该依赖项属性,以便可视化树中的所有控件都继承倾斜效果,如果需要也可以只将该依赖项属性应用于单个控件。
TiltEffect.cs 文件还定义另一个依赖项属性 (SuppressTilt),该属性可抑制控件上的倾斜效果。您可能想使用该属性的情况是,当您想在某个页面上全局应用倾斜效果,但希望能够排除该页面上的某个特定控件使用倾斜效果。
名称 | 类型 | 说明 |
---|---|---|
IsTiltEnabled | 依赖项属性 | 布尔:该依赖项属性允许您在应用程序中应用倾斜效果。可以全局应用,也可以只应用于单个控件。 |
SuppressTilt | 依赖项属性 | 布尔:该依赖项属性允许您抑制某个控件上的倾斜效果。 |
提示: |
---|
TiltEffect.cs 文件将并入控件倾斜效果示例处的可下载示例。必须下载该示例并将代码导入您的项目中,以实现控件的倾斜效果。如何使用 Windows Phone 的控件倾斜效果主题提供有关创建倾斜效果应用程序的说明。 |
实现倾斜效果的具体步骤如下:
-
将 TiltEffect.cs 文件中的代码导入到您的项目中。
-
全局应用 IsTiltEnabled 依赖项属性,或只应用于项目中的所选控件。
-
可以选择将 SuppressTilt 依赖项属性应用于项目中的所选控件。
以下 TiltEffect.cs 文件代码片段会创建一个可倾斜的项列表:
public static List<Type> TiltableItems { get; private set; } static TiltEffect() { TiltableItems = new List<Type>() { typeof(ButtonBase), typeof(ListBoxItem),}; }
点按某个控件时,TiltEffect 类将搜索启用倾斜效果的指定控件。默认情况下,将常规的 ButtonBase 类和 ListBoxItem 控件指定为可倾斜的项。如果某个控件类型此处不存在,那么倾斜效果将不会应用于任何控件,即使附加了 IsTiltEnabled 依赖项属性并设置为 True 也是如此。您不应该直接修改此代码片段来添加对其他控件的支持。而是应该从您自己的代码来更新该列表,如使用如下片段:
TiltEffect.TiltableItems.Add(typeof(“MyCustomControl”))
但是,不建议添加其他内置控件,因为应用程序中的倾斜行为将会不一致。