我的相框有点问题。
我编写了一个静态方法,它在内部绘制了一个带有文本框的内容对话框,如果文本框不是空的,则应该打开page_2
。
目前我正在使用
"ContentFrame.Navigate(typeof(Page_2), "operation");"
,但是我的项目在主页上有一个窗格Hamburguer菜单,它应该在所有页面上。 如果我使用ContentFrame.Navigate它就会消失。
以下是我的静态内容对话框:
public static async void D_NewProject(double Widthmax)
{
ContentDialog D_NewProject = new ContentDialog()
{
Title = "New Project",
MaxWidth = Widthmax, // this.ActualWidth,
};
StackPanel D_panel = new StackPanel();
TextBox TextBox_D1 = new TextBox()
{
PlaceholderText = "Name:",
TextWrapping = TextWrapping.Wrap,
};
D_panel.Children.Add(TextBox_D1);
D_NewProject.Content = D_panel;
D_NewProject.PrimaryButtonText = "OK";
D_NewProject.PrimaryButtonClick += delegate
{
if (TextBox_D1.Text != "")
{
/**/
Frame ContentFrame = Window.Current.Content as Frame;
ContentFrame.Navigate(typeof(Page_2), "operation");
/**/
}
};
await D_NewProject.ShowAsync();
}
如果您需要更多代码,例如窗格,您可以要求它。 任何帮助表示赞赏。
答案 0 :(得分:0)
如果您想要一个在所有页面中都处于活动状态的布局页面,
您需要在App.xaml.cs
中创建一个方法,该方法将当前页面加载到此布局中。
我可以建议你自己使用这种方法:
public static void LoadLayout(Type pageType)
{
// just ensure that the window is active
RootFrame = new _Layout();
RootFrame.ContentFrame.Navigate(pageType, null);
RootFrame.ContentFrame.Navigated += ContentFrame_Navigated;
ContentFrame_Navigated(null, null);
Window.Current.Content = RootFrame;
}
ContentFrame_Navigated
委托仅用于控制布局上的项目(例如:按钮,...)。