我有问题,我现在无法弄清楚。我正在尝试开发一个 Windows-8 风格的应用程序并且我坚持实现这个功能。
我有一个MainWindow,其中包含一个 ListBox 和一个 Button (可以说addButton)。
当我单击按钮时,我导航到一个新页面,让我们说AddCustomerPage with this.Frame.Navigate(typeof (AddCustomerPage));
AddCustomerPage有 1 个 textBox 和 1 个按钮(可以说doneButton。当我单击按钮时,我希望将 textBox 中的字符串添加到上一页的 ListBox 中。
这是我当前的功能: 1. 创建 MainWindow。
点击添加按钮
AddCustomer 页面已创建。MainWindow 被破坏(问题)。
点击完成按钮
使用具有 1 个项目的 ListBox 创建 MainWindow 对象。
重复添加过程,我总是得到一个带有 1 个项目的 ListBox 的 MainWindow。
谢谢您的帮助。这是代码:
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
this.brainPageController = new PageController();
// add items from the List<String> to the listBox
listGoals.ItemsSource = brainPageController.GetListGoals();
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
var parameter = e.Parameter as String;
// a simple controller that adds a string to a List<string>
brainPageController.AddGoal(parameter);
}
private void addButton_Click(object sender, RoutedEventArgs e)
{
this.Frame.Navigate(typeof (GoalsInfo));
}
// VARIABLES DECLARATION
private PageController brainPageController;
}
public sealed partial class GoalsInfo : WinGoalsWIP.Common.LayoutAwarePage
{
public GoalsInfo()
{
this.InitializeComponent();
this.brainPageController = new PageController();
}
protected override void LoadState(Object navigationParameter, Dictionary<String, Object> pageState)
{
}
protected override void SaveState(Dictionary<String, Object> pageState)
{
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
brainPageController.AddGoal(nameTextBox.Text);
this.Frame.Navigate(typeof(MainPage), nameTextBox.Text);
}
// VARIABLES DECLARATION
PageController brainPageController;
}