禁用 Windows Phone 上 ListView 中某些项的倾斜效果

本文关键字:倾斜 Phone Windows ListView 禁用 | 更新日期: 2023-09-27 18:32:27

我有一个Windows Phone 8.1应用程序,显示ListView中的项目列表。我设置 IsItemClickEnabledTrue .

ListView中有两种类型的项目,"活动"和"禁用"的项目。两种类型的渲染方式不同,我使用ItemTemplateSelector来选择正确的模板。

我希望"活动"项目可以使用标准倾斜效果(按下动画)进行单击,而"禁用"项目不会生成倾斜效果(我不在乎触发的点击,我可以处理)。

我发现我可以在整个ListView编辑ItemContainerStyle模板时禁用倾斜效果。但是如何仅对ListView中的某些项目禁用它?

禁用 Windows Phone 上 ListView 中某些项的倾斜效果

解决方案是使用ItemContainerStyleSelector

  • 定义具有两种样式的自定义StyleSelector以及在这两种样式之间切换的逻辑

  • 将其用作ListView上的ItemContainerStyleSelector

  • 确保从ListView中删除任何显式ItemContainerStyle。如果您定义一个,它将被视为高级样式,而不是默认样式,并且StyleSelector将不起作用。

您可以在 ItemContainerStyle 中禁用倾斜,并为单个项目模板启用倾斜... 例如,通过具有倾斜效果的自定义控件。