以编程方式设置时,SelectedItem不会在视觉上突出显示

时间:2011-12-17 17:01:30

标签: silverlight mvvm

我正在使用silverlight 4列表框控件来显示术语列表,在选择一个术语时,我正在调用ria服务 获取该术语的类似单词并为其他列表框加载相似的术语。对于一个要求我需要自动 获取术语列表框中的默认或第一个术语的类似术语。通过选择,我实现了同样的目标 itemsource的第一项,虽然我有一个问题,当我以编程方式设置列表框selecteditem时, 它的设置,但在视觉上所选项目不会突出显示。任何想法为什么所选项目不是 以编程方式设置时突出显示。

当我将鼠标悬停在条目列表框上时,项目会发生变化。

注意:我已经附加了一个poc应用程序来演示上述问题,当我运行poc应用程序时,第一个类似的术语 显示术语列表框中的术语。但是当我点击时,在这种情况下“红色”的第一个项目没有在视觉上突出显示 UI的术语列表框,第一个项目显示为透明矩形。

我尝试过的事情

我已经使用VSM为ListboxItem样式指定了SelectedUnfocused状态,并将该样式应用于 listboxItem的itemcontainerstyle属性。

1 个答案:

答案 0 :(得分:3)

  

然而,视觉上所选项目未突出显示。

致电ListBox.focus();

然后以编程方式选择您想要的项目:

ListBox.SelectedItem = item;
ListBox.SelectedIndex = index;
ListBox.SelectedItems.Add(item);
etc.