目前正在开发通用Windows平台应用程序,无法访问导航页面上的参数
传递参数的代码:
var ente = this.DataGrid.SelectedItem as Ente; var Id = ente.Id; Frame.Navigate(typeof(EntiEdit), Id);
这里是“NavigatedTo”页面
protected override void OnNavigatedTo(NavigationEventArgs e) { string Id = e.Parameter as string; }
我怎样才能使用这个string在我的其他方法? 事件覆盖受到保护,因此我无法访问其内容。
提前致谢
您应该将参数保存到类字段或属性才能访问它:
public class EntiEdit : Page { private string _entityId; protected override void OnNavigatedTo(NavigationEventArgs e) { _entityId = e.Parameter as string; } }
如果您需要在浏览页面之后启动一些处理,您可以从事件处理程序中执行此操作:
protected override void OnNavigatedTo(NavigationEventArgs e) { var entityId = e.Parameter as string; EntityData = LoadEntity(entityId); DoSomeOtherRoutine(entityId); }