Silverlight 导航系统全解析
1. 导航限制与历史支持
在 Silverlight 应用中,有时需要对特定页面的访问进行限制。可以通过处理 mainFrame_Navigating 事件来实现这一目的,示例代码如下:
Private Sub mainFrame_Navigating(ByVal sender As Object, _
ByVal e As NavigatingCancelEventArgs)
If e.Uri.ToString().ToLower().Contains("RestrictedPage.xaml") Then
e.Cancel = True
End If
End Sub
此代码不匹配整个 URI,而是检查是否存在受限页面名称,以避免潜在的规范化问题。例如,以下两个 URI 在功能上是等效的:
- localhost://Navigation/TestPage.html#/Page1.xaml
- localhost://Navigation/TestPage.html#/FakeFolder/.../Page1.xaml
Frame 控件的导航功能与浏览器集成。每次调用 Navigate() 方法时,Silverlight 会在历史记录列表中添加一个新条目。用户可以使用浏览器的后退或前进按钮,或者从历史记录列表中选择条目来加载上一页,且不会导致应用重启。不过,在撰写本文时,S
超级会员免费看
订阅专栏 解锁全文
94

被折叠的 条评论
为什么被折叠?



