我正在编写一个非常基本的Windows Phone 7应用程序。
我有一个视图模型(“MainViewModel”),它包含我创建的类(“EntrySheet”),其中包含一个ObservableCollection(我将其称为“条目”)。
我的MainPage.xaml包含一个数据绑定到App.ViewModel.EntrySheet.Entries的列表框。这非常适合显示列表,并且向ObservableCollection添加条目会反映在ListBox中。
然而,我无法理解的是将所选条目“传递”到更新页面的正确方法(这将允许用户更改条目上的字段:名称,金额,日期,以及何时何时导航回MainPage将反映在ListBox中。
我想我在ObservableCollection上有一个“SelectedItem”的预期,我可以导航到更新页面,它可以使用类似的东西:App.ViewModel.EntrySheet.Entries.SelectedItem。
我非常感谢您提供的任何帮助,并欢迎对如何更好地构建我的应用程序进行建设性的批评。
答案 0 :(得分:0)
我知道这是一个迟到的问题,但我现在碰巧遇到了你的问题。
这是一个可能的解决方案:
<强> XAML 强>
<ListBox Name="listBox" Tap="listBox_Tap">
<!-- Some code -->
</ListBox>
<强> C#强>
private void listBox_Tap(object sender, GestureEventArgs e)
{
DataObject dataObject = (sender as ListBox).SelectedItem as DataObject;
//Do something with dataObject
}
这将使您能够与列表框中所选项目后面的数据对象进行交互。