我有一個主窗口,其中包含一個框架。目的是在框架內顯示不同的視圖(頁面)。WPF - 導航到窗口中包含的框架內的不同頁面?
<Window>
<Frame Source="Page1.xaml" />
</Window>
的Page1.xaml的類型爲頁,幷包含一個按鈕,說Button1的。點擊Button1我想導航到Page2.xaml。但是下面休息在運行時應用程序:
private void OnButton1Click(object sender, SelectionChangedEventArgs e)
{
NavigationService.Content = null; //I tried this thinking exception is caused because Page1.xaml is already present in frame. But no luck! :(
NavigationService.Navigate(new Uri("Page2.xaml", UriKind.Relative));
}
它拋出XamlParseException「設置屬性‘System.Windows.FrameworkElement.Style’引發了異常。」內部異常讀取指定的元素已經是另一個元素的邏輯子元素。先斷開它。
我懷疑這也與樣式資源有關,因爲如果我在Page2.xaml中保留空白網格導航工作沒有問題。 : - |
編輯:開始增加了與樣式逐一Page2.xaml元素,並意識到它僅僅取消當我再補充一點集的嵌入圖像(圖像來自單獨的DLL,資產)作爲按鈕的內容的樣式資源。風格的問題是在一個單獨的Style.xaml文件(資源字典),定義如下:
<Style x:Key="BackButton" TargetType="Button">
<Setter Property="Content">
<Setter.Value>
<Image Source="/Assets;component/Images/back.png" />
<Setter.Value>
</Setter>
</Style>
如果我評論的內容屬性的setter,導航工作正常。因此,作爲一個快速解決方案,我在Page2.xaml上添加了圖像作爲直接按鈕的內容。
你述說資源/參考幀? – Gusdor
添加更多代碼。 –