在文本框中获取用户信息并将其添加到另一页的文本框中

时间:2014-06-16 20:39:45

标签: c# wpf windows visual-studio-2013

基本上我在我的VS2013项目中有一个MainPage,我有文本框,要求从位置和到位置。然后有一个Route按钮,将用户带到BING Map页面。我希望用户在MainPage文本框中的输入被添加到MapPage上的From和To框中,然后填充路径。我可以从MapPage填充路径,但是我无法在MainPage上获得用户输入以添加到MapPage上的From和To框中。

这是导航到MapPage的代码:

    private void MapPage_Click(object sender, RoutedEventArgs e)
    {
        if (this.Frame != null)
            {
                this.Frame.Navigate(typeof(Views.MapPage));
            }
    }

这是MapPage上的From和To框:

    <TextBlock Text="From:" FontSize="18"/>
    <TextBox Name="FromTbx" Width="220" Margin="10,0,0,0"/>

    <TextBlock Text="To:" FontSize="18"/>
    <TextBox Name="ToTbx" Width="220" Margin="33,10,0,10"/>

2 个答案:

答案 0 :(得分:0)

您最好的选择是创建一个模型类来存储数据,然后将TextBox绑定到两个页面上该模型的属性。

然后将该对象存储在经理类中或将其传递给新页面。

在模型类上,确保实现INotifyPropertyChanged。以下是XAML中的数据绑定示例:http://www.scottlogic.com/blog/2012/04/20/everything-you-wanted-to-know-about-databinding-in-wpf-silverlight-and-wp7-part-two.html

答案 1 :(得分:0)

我将以下代码添加到我的MainPage.xaml.cs页面:

    private void MapPage_Click(object sender, RoutedEventArgs e)
    {
        if (this.Frame != null)
        {
            typeof(Views.MapPage).FromTbx = this.FromTxtBox.Text;
            typeof(Views.MapPage).ToTbx = this.ToTxtBox.Text; 
            this.Frame.Navigate(typeof(Views.MapPage));
        }
    }

这段代码的意图是它会从文本框中输入用户的输入并将它们添加到MapPage上的文本框中,但是它会在&#34; FromTbx&#34;上出错。和#34; ToTbx&#34;。错误如下:&#34; &#39; System.Type的&#39;不包含&#34; FromTbx&#34;的定义接受类型&#39; System.Type&#39;的第一个参数可以找到(你是否缺少using指令或汇编引用?)&#34; (我也不缺。)