我有一个带有函数的 ac# 表单,它在 sql 数据库中搜索一个项目,然后在另一个窗口中弹出一个可能的结果列表。我想等到用户选择一行,然后返回该结果。一切都按预期工作,但我想不出一种有效的方法来循环等待,直到项目被选中。有任何想法吗?
显示窗口的功能:
// Some sql crap to fill a dataset...//
Da.Fill(Items, "Items");
Connection.Close();
var ItemSearch = new Window1(); // Load new window with a datagrid
ItemSearch.Show();
ItemSearch.dataGrid1.ItemsSource = Items.Tables["Items"].DefaultView;
ItemSearch.dataGrid1.SelectionMode = DataGridSelectionMode.Single;
ItemSearch.dataGrid1.SelectionUnit = DataGridSelectionUnit.FullRow;
while (ItemSearch.dataGrid1.SelectedItem != null)
{
// Do something until the user selects a row, then return that row
Thread.Sleep(100); // Doesn't work... Locks whole screen
}
}
return ItemCode; // Selected row