从LonglistSelector返回选择到Windows Phone 8中的调用页面

时间:2013-07-02 10:27:43

标签: windows-phone-8 longlistselector

我有一个带有一些内容的按钮的主页。我想在女巫中打开第二页或弹出窗口我必须有一个带有X项的longlistselector。当我选择其中一个时,我想将按钮的内容更改为所选项目。

我可以制作主页面和第二页我不知道如何将结果发送回第一页。 ?

3 个答案:

答案 0 :(得分:0)

如果您使用“MVVM Light”库,那么您可以使用Messenger服务,就像这样....

选择后第二页中的

发送消息

Messenger.Default.Send<type>(message,token);

然后在第1页viewmodel

的consructor中
Messenger.Default.Register<type>(this,token,Method);

此处令牌应与发件人令牌相同....

然后

void Method(type message)
{
  button.content = message;
}

答案 1 :(得分:0)

使用Popup显示您的LongListSelector,并在设置popupElement.IsOpen=false;时设置相同的Button Content,

如果您希望将内容更改为选定列表,请在选择更改方法上使用popupElement.IsOpen=false;并在那里获取所选项目。

请记住在页面上使用选择更改方法而不是在弹出子类中。

答案 2 :(得分:0)

如果您使用单独的页面来显示longlistselector,那么您可以尝试这样的事情。

//in long list page, 
Void longlist_SelectionChanged()
{
    PhoneApplicationService.Current.State["key"] = longlist.selecteditem;
    NavigationService.GoBack();
}

//in your main page where the selected data has to be displayed..
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
    if(PhoneApplicationService.Current.State.ContainsKey("key"))
    {
        Button.Content = PhoneApplicationService.Current.State["key"];
    }
}