MainWindows中。通过点击按钮,给Main窗体中的ContentControl赋不同的Page,实现页面切换。
但设置page页面的控件,如可见性时没有见效
设置方法:
在主窗体中,通过委托,执行Page中的方法,进行可见性设置
请求可行方案,及不可设置的原因?
1.Page
<Grid x:Name="grid" Background="Red" >
<TextBlock Text="ok" FontSize="200" x:Name="tb"/>
</Grid>
public void HiddingSettings(string hidden)
{
if (hidden=="1")
{
tb.Text = "ok?";
//tb.Visibility = Visibility.Hidden;
}
}
2.MainWindow
///
/// MainWindow.xaml 的交互逻辑
///
public partial class MainWindow : Window
{
Action<string> HinddenSettings;// 隐藏或显示设置等相关功能
Frame page1 = new Frame() { Content = new Page1() };
public MainWindow()
{
InitializeComponent();
contentShow.Content = page1;
HinddenSettings += new Action<string>(new Page1().HiddingSettings);
}
private void click_Click(object sender, RoutedEventArgs e)
{
HinddenSettings("1");
}
}
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<ContentControl Grid.Row="0" x:Name="contentShow" VerticalAlignment="Center"/>
<Button Grid.Row="1" Height="20" Width="200" x:Name="click" Content="click me" Click="click_Click"/>
</Grid>