我想从一个页面导航到另一个页面 如果我的目标页面构造函数定义为,
public Bills()
{
this.InitializeComponent();
}
对于正常导航我正在使用
Frame.Navigate(typeof(Billing.Bills));
并且工作正常。假设我的目标页面构造函数包含一些参数,如
public Bills(string strBillType, string strExchangeAmount, RootObject objRoot, string strPaymentType)
{
this.InitializeComponent();
}
在上述情况如何导航到目标网页?。
答案 0 :(得分:5)
您需要使用重载方法Navigate(Type sourcePageType, System.Object parameter)
为参数创建类:
public class BillParameters
{
//your properties
public BillParameters(string strBillType, string strExchangeAmount, RootObject objRoot, string strPaymentType)
{
}
}
传递你的参数:
var parameters = new BillParameters(strBillType, strExchangeAmount, objRoot, strPaymentType);
Frame.Navigate(typeof(Billing.Bills), parameters);
并在您的目标网页上重新
protected override async void OnNavigatedTo(NavigationEventArgs e)
{
var parameters = e.Parameter as BillParameters;
}
答案 1 :(得分:3)
你做不到。如果您需要向页面发送值,请使用Frame.Navigate
的重载:
Frame.Navigate(typeof(Billing.Bills), parameter)
然后,您可以从页面中检索参数的值:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
// Read e.Parameter to retrieve the parameter
}