这是我用来在WPF应用程序中的页面之间导航的代码:
MainMenu mainMenu = new MainMenu();
this.Content = mainMenu;
当从主菜单导航到我的页面之一时,它可以工作,但是对于该“后退”按钮,使用相同的代码,我会收到以下错误消息:
类型为'System.InvalidOperationException'的未处理异常 在PresentationFramework.dll中发生
其他信息:窗口必须是树的根。不能 将Window添加为Visual的子级。
我做错了什么,在页面之间导航是否有更好的方法?
答案 0 :(得分:0)
将此代码添加到您的.xaml文件中:
DROP TABLE IF EXISTS #DataSource;
CREATE TABLE #DataSource
(
[Param01] INT
,[Param02] INT
,[Param03] INT
);
DECLARE @DataHeadings TABLE
(
[ColumnID] INT
,[ColumnName] SYSNAME
);
INSERT INTO #DataSource ([Param01], [Param02], [Param03])
VALUES (1, 1, 1)
,(2, 2, 2)
,(3, 3, 3);
INSERT INTO @DataHeadings ([ColumnID], [ColumnName])
VALUES (1, 'name')
,(2, 'age')
,(3, 'login');
DECLARE @DynamicTSQLStatement NVARCHAR(MAX);
SET @DynamicTSQLStatement = N'SELECT ' + STUFF
(
(
SELECT ',[Param' + RIGHT([ColumnID] + 100, 2) + '] AS [' + [ColumnName] + ']'
FROM @DataHeadings
ORDER BY [ColumnID]
FOR XML PATH(''), TYPE
).value('.', 'VARCHAR(MAX)')
,1
,1
,''
)
+ 'FROM #DataSource';
EXEC sp_executesql @DynamicTSQLStatement;
并将其添加到.cs文件:
<Grid Grid.Row="0" Grid.Column="1">
<ContentControl x:Name="ListPanel" />
</Grid>