UWP内容对话框和内容框架
本文关键字:框架 对话框 UWP | 更新日期: 2023-09-27 18:02:16
我的车架有点小问题。
我写了一个静态方法,它画了一个内容对话框里面有一个文本框,如果文本框不是空的,它应该打开page_2
.
目前我使用
"ContentFrame.Navigate(typeof(Page_2), "operation");"
,但是我的项目在主页上有一个汉堡包菜单,它应该在所有的页面上。如果我使用ContentFrame。导航它就消失了
下面是我的静态内容对话框:
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();
}
如果您需要更多类似窗格的代码,您可以请求它。
如果你想让一个布局页面在所有页面中都是活动的,你需要在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
委托仅用于控制布局上的项目(例如:按钮,…)。