7 个解决方案
#1
关注,同问
#2
问大家一个问题在Silverlight中的RadGridView控件,怎么把某一列给隐藏起来,但是如果我要传值的话,我又可以获得到他的值?
#3
可以看下如下思路:
在App.xaml.cs文件中的Application_Startup方法中添加如下代码:
this.RootVisual = rootGrid;
this.rootGrid.Children.Add(new Login());
其中rootGrid是一个Grid对象。
在Login.xaml中登录按钮的点击事件代码书写如下:
App app = App.Current as App;
MainPage mainPage = new MainPage();
app.Turn(mainPage);
在MainPage.xaml中有个退出登录的按钮,点击事件代码书写如下:
App app = App.Current as App;
Login login = new Login();
app.Turn(login);
Turn方法如下:
public void Turn(UserControl userControl)
{
App app = App.Current as App;
app.rootGrid.Children.Clear();
app.rootGrid.Children.Add(userControl);
}
这只是一个大概的思路。仅供参考!
在App.xaml.cs文件中的Application_Startup方法中添加如下代码:
this.RootVisual = rootGrid;
this.rootGrid.Children.Add(new Login());
其中rootGrid是一个Grid对象。
在Login.xaml中登录按钮的点击事件代码书写如下:
App app = App.Current as App;
MainPage mainPage = new MainPage();
app.Turn(mainPage);
在MainPage.xaml中有个退出登录的按钮,点击事件代码书写如下:
App app = App.Current as App;
Login login = new Login();
app.Turn(login);
Turn方法如下:
public void Turn(UserControl userControl)
{
App app = App.Current as App;
app.rootGrid.Children.Clear();
app.rootGrid.Children.Add(userControl);
}
这只是一个大概的思路。仅供参考!
#4
navigate
#5
控件名.Columns["绑定的值的名称(列名)"].IsVisible 设置这个属性
#6
就是页面跳转嘛。
页面跳转的方法一共有下面几种,估计你要用到的是下面的第二种,思路和lsklhc说的有点像。你看看吧。
一、Frame框架跳转的运用:
新建一个MainPage.xaml页面,输入以下代码:
<StackPanel>
<StackPanel Orientation="Horizontal" Background="WhiteSmoke">
<HyperlinkButton Content="页面1" FontSize="14" NavigateUri="/Page1.xaml" TargetName="tgFrame" />
<HyperlinkButton Content="页面2" FontSize="14" NavigateUri="/Page2.xaml" TargetName="tgFrame"/>
</StackPanel>
<navigation:Frame x:Name="tgFrame" FontSize="14" Source="MainPage.xaml" Margin="2" VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"/>
</StackPanel>
再新建两个页面,分别为:Page1.xaml,Page2.xaml,在Page1.xaml中输入以下代码:
<TextBlock Text="这里是页面1的内容!"/>
再在Page2.xaml中输入以下代码:
<TextBlock Text="这里是页面2的内容!"/>
完成!
二、XAML页面间的跳转:
可以先在App.xaml后台代码中定义一个对象:
Grid rootGrid = new Grid();
同时在App.xaml后台代码中新增一个方法:
////////////////
/// <summary>
/// 页面跳转
/// </summary>
/// <param name="usercontrol"></param>
public static void RedirectTo(UserControl usercontrol)
{
App app = (App)Application.Current;
app.rootGrid.Children.Clear();
app.rootGrid.Children.Add(usercontrol);
}
然后将App.xaml中的以下方法修改为如下代码:
private void Application_Startup(object sender, StartupEventArgs e)
{
this.RootVisual = rootGrid;
rootGrid.Children.Add(new MainPage());
}
在以后的Xaml页面的跳转Button响应事件中,直接通过以下方式处理:
App.RedirectTo(new MyXXXaml());
三、XAML页面跳转到aspx(或html)页面,在响应事件中键入以下代码即可:
HtmlWindow html = HtmlPage.Window;
html.Navigate(new Uri("Default.aspx", UriKind.Relative));
四、页面传值(转载):
关于页面传值我仅仅说一下我的方式,当让网上也有其他的关于页面之间传值的方法。主要是使用独立存储的IsolatedStorageSettings对象,首先在UserControl中创建对象:
private IsolatedStorageSettings appSettings = IsolatedStorageSettings.ApplicationSettings;然后在Button事件中加入如下代码,用于传值:
if (!appSettings.Contains("Page2"))
appSettings.Add("Page2", "UserName");
OK了,在目标页面获取值的方式就简单了.
if (appSettings.Contains("Page2"))
txbShowvalue.Text = "User Name: " + appSettings["Page2"].ToString();
需要注意的一点是这个获取值的代码不要写在页面的构造函数里面,有可能不会触发,原因是在上面对象已经保存在内存中了,但是会触发Loaded事件,因此可以把代码放到这个事件里面。
页面跳转的方法一共有下面几种,估计你要用到的是下面的第二种,思路和lsklhc说的有点像。你看看吧。
一、Frame框架跳转的运用:
新建一个MainPage.xaml页面,输入以下代码:
<StackPanel>
<StackPanel Orientation="Horizontal" Background="WhiteSmoke">
<HyperlinkButton Content="页面1" FontSize="14" NavigateUri="/Page1.xaml" TargetName="tgFrame" />
<HyperlinkButton Content="页面2" FontSize="14" NavigateUri="/Page2.xaml" TargetName="tgFrame"/>
</StackPanel>
<navigation:Frame x:Name="tgFrame" FontSize="14" Source="MainPage.xaml" Margin="2" VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"/>
</StackPanel>
再新建两个页面,分别为:Page1.xaml,Page2.xaml,在Page1.xaml中输入以下代码:
<TextBlock Text="这里是页面1的内容!"/>
再在Page2.xaml中输入以下代码:
<TextBlock Text="这里是页面2的内容!"/>
完成!
二、XAML页面间的跳转:
可以先在App.xaml后台代码中定义一个对象:
Grid rootGrid = new Grid();
同时在App.xaml后台代码中新增一个方法:
////////////////
/// <summary>
/// 页面跳转
/// </summary>
/// <param name="usercontrol"></param>
public static void RedirectTo(UserControl usercontrol)
{
App app = (App)Application.Current;
app.rootGrid.Children.Clear();
app.rootGrid.Children.Add(usercontrol);
}
然后将App.xaml中的以下方法修改为如下代码:
private void Application_Startup(object sender, StartupEventArgs e)
{
this.RootVisual = rootGrid;
rootGrid.Children.Add(new MainPage());
}
在以后的Xaml页面的跳转Button响应事件中,直接通过以下方式处理:
App.RedirectTo(new MyXXXaml());
三、XAML页面跳转到aspx(或html)页面,在响应事件中键入以下代码即可:
HtmlWindow html = HtmlPage.Window;
html.Navigate(new Uri("Default.aspx", UriKind.Relative));
四、页面传值(转载):
关于页面传值我仅仅说一下我的方式,当让网上也有其他的关于页面之间传值的方法。主要是使用独立存储的IsolatedStorageSettings对象,首先在UserControl中创建对象:
private IsolatedStorageSettings appSettings = IsolatedStorageSettings.ApplicationSettings;然后在Button事件中加入如下代码,用于传值:
if (!appSettings.Contains("Page2"))
appSettings.Add("Page2", "UserName");
OK了,在目标页面获取值的方式就简单了.
if (appSettings.Contains("Page2"))
txbShowvalue.Text = "User Name: " + appSettings["Page2"].ToString();
需要注意的一点是这个获取值的代码不要写在页面的构造函数里面,有可能不会触发,原因是在上面对象已经保存在内存中了,但是会触发Loaded事件,因此可以把代码放到这个事件里面。
#7
好像没有说清楚,在精确一点描述。
#1
关注,同问
#2
问大家一个问题在Silverlight中的RadGridView控件,怎么把某一列给隐藏起来,但是如果我要传值的话,我又可以获得到他的值?
#3
可以看下如下思路:
在App.xaml.cs文件中的Application_Startup方法中添加如下代码:
this.RootVisual = rootGrid;
this.rootGrid.Children.Add(new Login());
其中rootGrid是一个Grid对象。
在Login.xaml中登录按钮的点击事件代码书写如下:
App app = App.Current as App;
MainPage mainPage = new MainPage();
app.Turn(mainPage);
在MainPage.xaml中有个退出登录的按钮,点击事件代码书写如下:
App app = App.Current as App;
Login login = new Login();
app.Turn(login);
Turn方法如下:
public void Turn(UserControl userControl)
{
App app = App.Current as App;
app.rootGrid.Children.Clear();
app.rootGrid.Children.Add(userControl);
}
这只是一个大概的思路。仅供参考!
在App.xaml.cs文件中的Application_Startup方法中添加如下代码:
this.RootVisual = rootGrid;
this.rootGrid.Children.Add(new Login());
其中rootGrid是一个Grid对象。
在Login.xaml中登录按钮的点击事件代码书写如下:
App app = App.Current as App;
MainPage mainPage = new MainPage();
app.Turn(mainPage);
在MainPage.xaml中有个退出登录的按钮,点击事件代码书写如下:
App app = App.Current as App;
Login login = new Login();
app.Turn(login);
Turn方法如下:
public void Turn(UserControl userControl)
{
App app = App.Current as App;
app.rootGrid.Children.Clear();
app.rootGrid.Children.Add(userControl);
}
这只是一个大概的思路。仅供参考!
#4
navigate
#5
控件名.Columns["绑定的值的名称(列名)"].IsVisible 设置这个属性
#6
就是页面跳转嘛。
页面跳转的方法一共有下面几种,估计你要用到的是下面的第二种,思路和lsklhc说的有点像。你看看吧。
一、Frame框架跳转的运用:
新建一个MainPage.xaml页面,输入以下代码:
<StackPanel>
<StackPanel Orientation="Horizontal" Background="WhiteSmoke">
<HyperlinkButton Content="页面1" FontSize="14" NavigateUri="/Page1.xaml" TargetName="tgFrame" />
<HyperlinkButton Content="页面2" FontSize="14" NavigateUri="/Page2.xaml" TargetName="tgFrame"/>
</StackPanel>
<navigation:Frame x:Name="tgFrame" FontSize="14" Source="MainPage.xaml" Margin="2" VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"/>
</StackPanel>
再新建两个页面,分别为:Page1.xaml,Page2.xaml,在Page1.xaml中输入以下代码:
<TextBlock Text="这里是页面1的内容!"/>
再在Page2.xaml中输入以下代码:
<TextBlock Text="这里是页面2的内容!"/>
完成!
二、XAML页面间的跳转:
可以先在App.xaml后台代码中定义一个对象:
Grid rootGrid = new Grid();
同时在App.xaml后台代码中新增一个方法:
////////////////
/// <summary>
/// 页面跳转
/// </summary>
/// <param name="usercontrol"></param>
public static void RedirectTo(UserControl usercontrol)
{
App app = (App)Application.Current;
app.rootGrid.Children.Clear();
app.rootGrid.Children.Add(usercontrol);
}
然后将App.xaml中的以下方法修改为如下代码:
private void Application_Startup(object sender, StartupEventArgs e)
{
this.RootVisual = rootGrid;
rootGrid.Children.Add(new MainPage());
}
在以后的Xaml页面的跳转Button响应事件中,直接通过以下方式处理:
App.RedirectTo(new MyXXXaml());
三、XAML页面跳转到aspx(或html)页面,在响应事件中键入以下代码即可:
HtmlWindow html = HtmlPage.Window;
html.Navigate(new Uri("Default.aspx", UriKind.Relative));
四、页面传值(转载):
关于页面传值我仅仅说一下我的方式,当让网上也有其他的关于页面之间传值的方法。主要是使用独立存储的IsolatedStorageSettings对象,首先在UserControl中创建对象:
private IsolatedStorageSettings appSettings = IsolatedStorageSettings.ApplicationSettings;然后在Button事件中加入如下代码,用于传值:
if (!appSettings.Contains("Page2"))
appSettings.Add("Page2", "UserName");
OK了,在目标页面获取值的方式就简单了.
if (appSettings.Contains("Page2"))
txbShowvalue.Text = "User Name: " + appSettings["Page2"].ToString();
需要注意的一点是这个获取值的代码不要写在页面的构造函数里面,有可能不会触发,原因是在上面对象已经保存在内存中了,但是会触发Loaded事件,因此可以把代码放到这个事件里面。
页面跳转的方法一共有下面几种,估计你要用到的是下面的第二种,思路和lsklhc说的有点像。你看看吧。
一、Frame框架跳转的运用:
新建一个MainPage.xaml页面,输入以下代码:
<StackPanel>
<StackPanel Orientation="Horizontal" Background="WhiteSmoke">
<HyperlinkButton Content="页面1" FontSize="14" NavigateUri="/Page1.xaml" TargetName="tgFrame" />
<HyperlinkButton Content="页面2" FontSize="14" NavigateUri="/Page2.xaml" TargetName="tgFrame"/>
</StackPanel>
<navigation:Frame x:Name="tgFrame" FontSize="14" Source="MainPage.xaml" Margin="2" VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"/>
</StackPanel>
再新建两个页面,分别为:Page1.xaml,Page2.xaml,在Page1.xaml中输入以下代码:
<TextBlock Text="这里是页面1的内容!"/>
再在Page2.xaml中输入以下代码:
<TextBlock Text="这里是页面2的内容!"/>
完成!
二、XAML页面间的跳转:
可以先在App.xaml后台代码中定义一个对象:
Grid rootGrid = new Grid();
同时在App.xaml后台代码中新增一个方法:
////////////////
/// <summary>
/// 页面跳转
/// </summary>
/// <param name="usercontrol"></param>
public static void RedirectTo(UserControl usercontrol)
{
App app = (App)Application.Current;
app.rootGrid.Children.Clear();
app.rootGrid.Children.Add(usercontrol);
}
然后将App.xaml中的以下方法修改为如下代码:
private void Application_Startup(object sender, StartupEventArgs e)
{
this.RootVisual = rootGrid;
rootGrid.Children.Add(new MainPage());
}
在以后的Xaml页面的跳转Button响应事件中,直接通过以下方式处理:
App.RedirectTo(new MyXXXaml());
三、XAML页面跳转到aspx(或html)页面,在响应事件中键入以下代码即可:
HtmlWindow html = HtmlPage.Window;
html.Navigate(new Uri("Default.aspx", UriKind.Relative));
四、页面传值(转载):
关于页面传值我仅仅说一下我的方式,当让网上也有其他的关于页面之间传值的方法。主要是使用独立存储的IsolatedStorageSettings对象,首先在UserControl中创建对象:
private IsolatedStorageSettings appSettings = IsolatedStorageSettings.ApplicationSettings;然后在Button事件中加入如下代码,用于传值:
if (!appSettings.Contains("Page2"))
appSettings.Add("Page2", "UserName");
OK了,在目标页面获取值的方式就简单了.
if (appSettings.Contains("Page2"))
txbShowvalue.Text = "User Name: " + appSettings["Page2"].ToString();
需要注意的一点是这个获取值的代码不要写在页面的构造函数里面,有可能不会触发,原因是在上面对象已经保存在内存中了,但是会触发Loaded事件,因此可以把代码放到这个事件里面。
#7
好像没有说清楚,在精确一点描述。