看看你主頁上的UriMapper
。最後UriMapping
通常會被捕捉一切,看起來像這樣: -
<uriMapper:UriMapping Uri="/{pageName}" MappedUri="/Views/{pageName}.xaml"/>
你會注意到在「/」的URI和相應頁的開頭所屬的「/視圖」文件夾中。
使用屬性: -
NavigatUri="/myPage?mode=edit"
確保您在瀏覽文件夾頁。
但是我很肯定你已經有了。你真正的問題是你試圖在執行頁面構造函數時訪問NavigationContext
。它在頁面生命週期的這一點上不可用。在執行OnNavigatedTo
之前,您不應該嘗試使用它。
public partial class MyPage : Page
{
public MyPage()
{
InitializeComponent();
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
string mode = null;
if (NavigationContext.QueryString.ContainsKey("mode"))
{
mode = NavigationContext.QueryString["mode"];
}
// Do stuff with mode.
}
}
你所看到的原因,「找不到網頁錯誤」是那是因爲導航應用程式ErrorWindow
只是假定任何故障加載一個頁面,是因爲它沒有被發現。假設你已經正確編碼你的頁面,這可能是一個合理的假設。
即時通訊使用其中一個模板,我無法找到uri映射器在哪裏lol。它應該像這樣設置。我試過這個,看起來不行。我不再收到錯誤,但它沒有收到參數 – Sinaesthetic
找到了uri映射器,它按照描述進行了設置,但仍然無法使用該參數。我將模式值更改爲formMode。我運行了一個顯示來顯示導航上下文中存在哪些鍵,並且顯示有一個叫做mode的鍵,但我似乎無法修改它,並且formMode沒有被傳遞。 – Sinaesthetic
實際上,我只是注意到,在地址欄中,儘管事實上我的超鏈接控件說了,但是mode = 2被傳遞了嗎?formMode = edit – Sinaesthetic