在全景页面上,我有一个带有一些产品的 LongListSelector。当用户单击一个项目时,我想将其添加到下一个全景项目上的另一个 LongListSelector。如果用户单击同一项目,我将在 TextBlock 上显示数量,并且不会再次将其添加到下一个列表中。我不知道如何开始。我已经在第一个列表中添加了项目。
有什么想法吗?提前致谢。
在全景页面上,我有一个带有一些产品的 LongListSelector。当用户单击一个项目时,我想将其添加到下一个全景项目上的另一个 LongListSelector。如果用户单击同一项目,我将在 TextBlock 上显示数量,并且不会再次将其添加到下一个列表中。我不知道如何开始。我已经在第一个列表中添加了项目。
有什么想法吗?提前致谢。
我也会在 selectionchanged 事件中处理这个问题。
将数据提供给下一页的最简单方法是参数值:
NavigationService.Navigate(new Uri("/SecondPage.xaml?msg=JSONSTRING", UriKind.Relative));
也许将 Object 序列化为 JSON-String 将其像前面一样传递并在新页面上再次将其反序列化到您的对象:
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
String productsJSON = NavigationContext.QueryString["msg"];
YourProducts product = JsonConvert.DeserializeObject<YourProducts>(productsJSON);
还是您的意思是同一全景页面中的全景项目?
当用户点击列表中的某个项目时SelectionChanged
,您将获得所选项目的对象。然后,将此项目添加到 list2 并检查它是否已经存在于 list2 中。
LongListSelectorSelectionChanged()
- if(SelectedItem in LIST2)
Display quantity in the textbox
return
- else
Add the SelectedItem in the LIST2
return
我希望您的 List2 是绑定到 paranoma viewl 的 ViewModel,以便在将项目添加到 List2 后立即更改视图。