Windows Phone 7 - 将所选项目(listbox数据绑定到ObservableCollection)传递到“更新”页面

时间:2012-02-29 02:00:09

标签: windows-phone-7 data-binding listbox observablecollection

我正在编写一个非常基本的Windows Phone 7应用程序。

我有一个视图模型(“MainViewModel”),它包含我创建的类(“EntrySheet”),其中包含一个ObservableCollection(我将其称为“条目”)。

我的MainPage.xaml包含一个数据绑定到App.ViewModel.EntrySheet.Entries的列表框。这非常适合显示列表,并且向ObservableCollection添加条目会反映在ListBox中。

然而,我无法理解的是将所选条目“传递”到更新页面的正确方法(这将允许用户更改条目上的字段:名称,金额,日期,以及何时何时导航回MainPage将反映在ListBox中。

我想我在ObservableCollection上有一个“SelectedItem”的预期,我可以导航到更新页面,它可以使用类似的东西:App.ViewModel.EntrySheet.Entries.SelectedItem。

我非常感谢您提供的任何帮助,并欢迎对如何更好地构建我的应用程序进行建设性的批评。

1 个答案:

答案 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
}

这将使您能够与列表框中所选项目后面的数据对象进行交互。

Windows Phone Geek提供