我想使用独立存储创建一个Windows Phone 7应用程序。我创建了两个名为MainPage.xaml和Page1.xaml的页面。在MainPage.xaml中,我创建了一个名为button1的按钮和一个名为textBox1的textBox。在Page1.xaml中,我创建了一个名为listBox1的列表框。如果我在textBox1中写了一些东西,当我点击button1(在MainPage.xaml中)时,我需要listBox1来显示所有内容,无论我写入textBox1还是我需要保存listBox1中的内容隔离存储。任何人都可以帮忙吗??? ...我已经研究过这么多地方。在此先感谢您的辛勤工作!!!
答案 0 :(得分:0)
在Mainpage.xaml
中Private void button1_click()
{
string message = textbox1.text;
NavigationService.Navigate(new Uri(String.format("/Page1.xaml?value1 = {0}",message), UriKind.Relative));}
在Page1.Xaml
中protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
string newparameter = "";
this.NavigationContext.QueryString.TryGetValue("value1", out newparameter);
listbox1.items.add(newparameter.ToString());}
然后获取newparameter字符串并将其保存在isostore中。任何帮助进一步问我。
答案 1 :(得分:0)
在MainPage.xaml.cs中,您可以这样写:
Private void button1_click()
{
NavigationService.Navigate(new Uri("/Page1.xaml?content="+textBox1.Text,UriKind.Relative));
}
在Page1.xaml.cs中,您可以这样写:
using System.Collections.Generic;
using Microsoft.Phone.Controls;
using System.IO;
using System.IO.IsolatedStorage;
namespace PhoneApp1
{
public partial class Page1 : PhoneApplicationPage
{
public static List<string> list = new List<string>();
public Page1()
{
InitializeComponent();
listBox1.ItemsSource = list;
IsolatedStorageFile storge = IsolatedStorageFile.GetUserStoreForApplication();
StreamWriter writer = new StreamWriter(new IsolatedStorageFileStream("/list.txt", FileMode.OpenOrCreate, storge));
for (int i = 0; i < list.Count; i++)
{
writer.WriteLine(list[i]);
}
writer.Close();
}
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
if (NavigationContext.QueryString.ContainsKey("content"))
{
list.Add(NavigationContext.QueryString["content"]);
}
base.OnNavigatedTo(e);
}
}
}