新手求助, Silverlight页面之间参数传递 【纠结中...】
初学Silverlight
目前就页面之间的参数传递有点纠结
在网上有搜索过资料,基本上都是说 页面通过New的形式打开,然后进行参数传递,但我采用的不是这种方式
如:
<HyperlinkButton Content="测试按钮一" TargetName="ContentFrame" NavigateUri="/StoryDetailsView" />
<navigation:Frame x:Name="ContentFrame" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Grid.Column="2" UriMapper="{StaticResource UriMap}"/>
UriMap是在App.xaml文件中
<uri:UriMapper x:Key="UriMap">
<uri:UriMapping Uri="" MappedUri="/MainPage.xaml"/>
<uri:UriMapping Uri="/{pageName}" MappedUri="/View/{pageName}.xaml"/>
</uri:UriMapper>
这种方式该如何进行页面间值的
-------------------------------------------------------
再比如:
Style
--------------------
<sdk:HierarchicalDataTemplate x:Key="Level2Template">
<StackPanel Orientation="Horizontal">
<Image Source="{Binding Icon}" Width="16" Height="16" />
<!--<TextBlock Text="{Binding Name}" Foreground="Black" MouseLeftButtonUp="TextBlock_MouseLeftButtonUp"/>-->
<HyperlinkButton Content="{Binding MenuName}" TargetName="ContentFrame" NavigateUri="{Binding MenuUrl}" />
</StackPanel>
</sdk:HierarchicalDataTemplate>
<sdk:HierarchicalDataTemplate x:Key="LevelTemplate" ItemsSource="{Binding Menus}" ItemTemplate="{StaticResource Level2Template}">
<StackPanel Orientation="Horizontal">
<Image Source="{Binding Icon}" Width="16" Height="16"/>
<TextBlock Text="{Binding MenuName}" Foreground="Green"/>
</StackPanel>
</sdk:HierarchicalDataTemplate>
------------------
左侧树形菜单
<sdk:TreeViewItem x:Name="TreeItem" BorderBrush="Black" Foreground="Blue" IsExpanded="True" ItemTemplate="{StaticResource LevelTemplate}"/>
通过点击HyperlinkButton 来切换右边内容页面
这样如何进行参数之间的传递
初学求助,自己都没什么分了,全部压上,求助......
谢谢
[解决办法]
这个是获取url参数值的方法
Page_VideosList _videosList = e.Content as Page_VideosList;
if (_videosList.NavigationContext.QueryString.ContainsKey("searchParam"))
{
searchParam = _videosList.NavigationContext.QueryString["searchParam"];
}
你绑定的时候可以重新定义一个类来处理。
比如
public string menuUrl
{
get { return menuUrl+ "?searchParam='canshu'"; }
set { menuUrl= value; }
}
然后绑定这个类。
不知道明白否。。。
还有一种方法,就是获取到item事件,然后后台调用你要切换的页面里的方法。
希望可以帮到你。