1

我在 XAML 中有一个 ListView 控件,其中包含由模板设置样式的项目。

该模板包含一个文本框

当我在键盘上的控件之间切换时,我会在整个模板周围看到一个选择框,而在下一个选项卡上,焦点会转到第一个 TextBox。

当 ListView 上的焦点发生变化时如何通知我?

[更新 1] 这是一个开始: 如何在样式设置器中添加混合行为

首先,我需要挂钩 GotFocus/LostFocus 事件。最好的方法是使用行为,因此按照上面的详细信息,我创建了一个布尔附加属性 IsScrollIntoViewEnabled。

然后,我将该值设置为 ListViewItemContainerStyle 的样式。

所以第一阶段是我知道一个项目何时获得和失去焦点。我仍然不知道如何从 ListViewItem 回到 ListView 本身。

4

1 回答 1

0

我解决了最后一块难题,通过遍历 VisualTreeHelper.GetParent(x) 从 ListViewItem 获取 ListView,直到找到正确类型的对象。

于 2012-12-16T09:24:07.247 回答