我有一个绑定到集合的自动完成框。在不同的点需要从AuotComplete框中的所选项目中获取值。我能解决这个问题的唯一方法就是这样;
foreach (var x in myCollection)
{
if (myAutoCompleteBox.SelectedItem == x)
{
myString = x.StringValue;
break;
}
}
这似乎是一种不好的做法,有更好的方法吗?
答案 0 :(得分:2)
myAutoCompleteBox.SelectedItem
存储所选对象项,以便您可以直接使用它,无需迭代。
然而,常见的方法是使用MVVM pattern将UI与逻辑分开。在这种情况下,您将SelectedItem属性绑定到ViewModel类的属性,并在需要在逻辑中使用它时访问它。