【问题标题】:Page loaded in frame is not styled在框架中加载的页面没有样式
【发布时间】:2019-11-09 08:11:34
【问题描述】:

我终其一生都无法弄清楚如何在 wpf 中制作多页应用程序。我的问题是,当我将页面加载到框架中时,它不使用页面的样式

xaml

<Frame x:Name="Main" Margin="0,82,0,0"</Frame>

c#代码

private void SettingsButton_Click(object sender, RoutedEventArgs e)
  {
    Main.DataContext = new settingsPage();
    Main.Content = new settingsPage();

    SettingsButton.Content = Main.DataContext.ToString();

  }

希望有人知道这里发生了什么并可以提供帮助:) 谢谢

【问题讨论】:

  • 除了您应该使用Frame.Navigate 方法之外,您显然正在创建您的settingsPage 类的两个实例。这是没有意义的。从这里开始阅读:Navigation Overview.
  • 这只是一个普通的应用程序还是一个“向导”风格的应用程序,用户需要通过一系列他们可能希望来回执行的步骤?如果前者我推荐viewmodel首先导航和用户控件而不是页面。框架带有很多行李。 social.technet.microsoft.com/wiki/contents/articles/…

标签: c# wpf windows


【解决方案1】:

在这里您可以找到一个完整的示例: Usage of Frame control

问题是你只需要使用NavigationService切换框架的来源。这应该可以解决您的样式问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-22
    • 2020-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多