如何将ListBox SelectedItem重置为它';的原始状态.WP7
本文关键字:原始 原始状 WP7 状态 ListBox SelectedItem | 更新日期: 2023-09-27 18:20:56
我有一个WP7 ListBox,包含两个项目,"第1行"answers"第2行"。当我选择一个项目时,它会将所选项目的状态更改为已选择,并且文本将为红色。
选择后,我会显示一个MessageBox,然后选择OK,并返回到ListBox,其中项目仍处于选中状态(红色)。
如何将所选项目重置为其原始状态?
TIA,Trey
这是我正在使用的代码。这有点像黑客,但有点奏效。
private void listBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
try
{
if (listBox1.SelectedItem.ToString() == "Line 1")
{
MessageBox.Show("Found");
ResetListBox();
}
else
{
MessageBox.Show("Not Found");
ResetListBox();
}
}
catch { }
}
private void ResetListBox()
{
listBox1.Items.Clear();
listBox1.Items.Add("Line 1");
listBox1.Items.Add("Line 2");
}
如果您使用MVVM,则ViewModel可以控制此逻辑,在用户单击Messagebox上的Ok后清除选择。代码可能看起来像
public void Show()
{
MessageBox.Show();
SelectedCustomer = _previouslySelectedCustomer;
}
该属性将引发属性更改,并将列表的SelectedItem属性绑定到该属性,这样更改将反映在UI中。
如果你没有使用MVVM,那么它看起来会很相似,只是你必须在Codebehin中设置它。
希望这能帮助
米格尔。
存储上一个所选项目。显示消息框后,在列表框上手动重置所选项目