我正在尝试动态添加TextBoxes,方法是询问用户textBoxes的数量。 此代码正在运行,但是将项目添加到当前位置。
NavigationService.Navigate(new Uri("/Page1.xaml?shouldDownload=true", UriKind.Relative)); //Naviagte on new page
int num;
int.TryParse(textBox1.Text, out num); //Converting textbox to int
for (int i = 1; i <= num; i++)
{
TextBox newtext = new TextBox();
newtext.Text = i.ToString();
newtext.Margin = new Thickness(300, (i * 80), 0, 0);
newtext.Width = 124;
newtext.Height = 68;
//button.VerticalAlignment = 234;
//Add contentpanel to your page if there's not one already.
ContentPanel.Children.Add(newtext);
newtext.Visibility = System.Windows.Visibility.Visible;
}
但我想将这些项目添加到新页面(即:Page1)而不是这里。
帮助将被挪用。
答案 0 :(得分:2)
尝试通过导航参数
将其传递到第二页string num = textBox1.Text;
NavigationService.Navigate(new Uri("/Page1.xaml?shouldDownload=true&num="+num, UriKind.Relative)); //Naviagte on new page
在第二页中,您将在OnNavigatedTo方法中解析结果
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
string numValue;
if (NavigationContext.QueryString.TryGetValue("num", out numValue))
{
int num = Convert.ToInt32(numValue);
// add 'em here
}
}
答案 1 :(得分:0)
你可以试试这个......
NavigationService.Navigate(new Uri("/Page1.xaml?shouldDownload=true&msg=" + extBox1.Text, UriKind.Relative));
然后在新页面的onnavigation方法上做这个..
IDictionary<string, string> parameters = NavigationContext.QueryString;
string number= parameters["msg"];
然后从中做你的代码
int num =0;
等等
我希望它可以帮助