我有一个项目要求我询问用户的国家/地区和电话号码。电话号码部分工作正常。国家部分本身也很好。考虑到这是一个2页的项目,我在Page2.xaml中有一个ListView,它显示了所有国家的列表(绑定到具有我的ViewModel的.cs文件(类文件)的数据)。在Page1.xaml中,我有一个文本块(以及一个我们无需担心的电话号码文本框),其 tapped 属性导航到Page2(并显示国家/地区列表)。我想知道:
如何从列表中选择所选项目(即第2页)并将其显示在文本块中(在第1页中)。
如果有一个1页的方式来实现这一点,也就是说,如果我可以用类似PlaceholderText(表示选择你的国家)以及何时显示listview本身单击,它将打开整个国家/地区列表。这类似于注册WhatsApp或Line,或类似的服务。
如果有办法实施#2,请引导我走正确路径。
仅供参考,对于#1,我尝试通过添加
来实现本地存储Windows.Storage.ApplicationDataContainer localsetting = Windows.Storage.ApplicationData.Current.LocalSettings; lstv_countries.SelectedItem = localsetting.Values["Countries"].ToString();
Windows.Storage.ApplicationDataContainer localsetting = Windows.Storage.ApplicationData.Current.LocalSettings; localsetting.Values["Countries"] = testText.Text;
在textblock的GotFocus事件中(在Page1中)。这不起作用:(
感谢您的回复。
谢谢!
答案 0 :(得分:0)
你可以使用组合框控件来完成同样的事情而不用大惊小怪。
参考https://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh780616.aspx
修改强> 在回复您的评论时,我建议您这样做:
在NavigatedTo部分中设置:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
int x;
if (int.TryParse(e.Parameter.ToString(), out x))
{
textText.Text=CountryList[x].Name
}
else
{
textText.Text="--Select your Country--";
}
}
在你的page2中,在你的selectionchanged事件处理程序
中设置它Frame.Navigate( typeof( Page1),Listview.SelectedIndex );