1

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

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

4

3 回答 3

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"];
    }
}
于 2014-02-12T14:44:27.483 回答
0

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

在选择更改后的第二页发送消息

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

然后在第 1 页视图模型的构造函数中

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

这里的令牌应该与发件人令牌相同......

然后

void Method(type message)
{
  button.content = message;
}
于 2013-07-02T10:39:45.577 回答
0

使用 Popup 显示您的 LongListSelector ,当 popupElement.IsOpen=false;设置按钮内容与所需相同时,

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

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

于 2013-07-05T10:12:33.033 回答