如何通过点击 Xamarin.forms 中的按钮从一页移动到另一页
how to move from one page to another from button click in Xamarin.forms
我只是想知道如何从一个内容页面移动到另一个内容页面..请查看 elseif() 代码..我必须在其中写的内容块,以便我可以移动到另一个内容页面(命名为 MainView.cs)..
button.Clicked += (sender, e) =>
{
if (String.IsNullOrEmpty(username.Text) || String.IsNullOrEmpty(password.Text))
{
DisplayAlert("Oops!!Validation Error", "Username and Password are required", "Re-try");
}
else if (username.Text == "kanak" && password.Text == "1234")
{
// your code here
}
else
{
DisplayAlert("Failed", "Invalid User", "Login Again");
}
};
感谢任何帮助..
首先将您的主要 contentPage
包裹在 NavigationPage
中。从那里您将使用 PushAsync(new SomeNewPage());
.
导航
在你的情况下应该是....
else if (username.Text == "kanak" && password.Text == "1234")
{
Navigation.PushAsync(new <App-Root-name>.<folder-name>.<Class-Name>());
}
示例(取自GitHub)...
using System;
using Xamarin.Forms;
namespace FormsGallery
{
class TableViewMenuDemoPage : ContentPage
{
public TableViewMenuDemoPage()
{
Label header = new Label
{
Text = "TableView for a menu",
Font = Font.SystemFontOfSize(30, FontAttributes.Bold),
HorizontalOptions = LayoutOptions.Center
};
TableView tableView = new TableView
{
Intent = TableIntent.Menu,
Root = new TableRoot
{
new TableSection("Views for Presentation")
{
new TextCell
{
Text = "Label",
Command = new Command(async () =>
await Navigation.PushAsync(new LabelDemoPage()))
},
new TextCell
{
Text = "Image",
Command = new Command(async () =>
await Navigation.PushAsync(new ImageDemoPage()))
},
new TextCell
{
Text = "BoxView",
Command = new Command(async () =>
await Navigation.PushAsync(new BoxViewDemoPage()))
},
new TextCell
{
Text = "WebView",
Command = new Command(async () =>
await Navigation.PushAsync(new WebViewDemoPage()))
},
}
}
};
// Build the page.
this.Content = new StackLayout
{
Children =
{
header,
tableView
}
};
}
}
}
else if (username.Text == "kanak" && password.Text == "1234")
{
Navigation.PushAsync(new <App-Root-name>.<folder-name>.<Class-Name>());
}
在代码中。 <App-Root-name>
和<folder-name>
和<Class-Name>
是什么意思???
我只是想知道如何从一个内容页面移动到另一个内容页面..请查看 elseif() 代码..我必须在其中写的内容块,以便我可以移动到另一个内容页面(命名为 MainView.cs)..
button.Clicked += (sender, e) =>
{
if (String.IsNullOrEmpty(username.Text) || String.IsNullOrEmpty(password.Text))
{
DisplayAlert("Oops!!Validation Error", "Username and Password are required", "Re-try");
}
else if (username.Text == "kanak" && password.Text == "1234")
{
// your code here
}
else
{
DisplayAlert("Failed", "Invalid User", "Login Again");
}
};
感谢任何帮助..
首先将您的主要 contentPage
包裹在 NavigationPage
中。从那里您将使用 PushAsync(new SomeNewPage());
.
在你的情况下应该是....
else if (username.Text == "kanak" && password.Text == "1234")
{
Navigation.PushAsync(new <App-Root-name>.<folder-name>.<Class-Name>());
}
示例(取自GitHub)...
using System; using Xamarin.Forms; namespace FormsGallery { class TableViewMenuDemoPage : ContentPage { public TableViewMenuDemoPage() { Label header = new Label { Text = "TableView for a menu", Font = Font.SystemFontOfSize(30, FontAttributes.Bold), HorizontalOptions = LayoutOptions.Center }; TableView tableView = new TableView { Intent = TableIntent.Menu, Root = new TableRoot { new TableSection("Views for Presentation") { new TextCell { Text = "Label", Command = new Command(async () => await Navigation.PushAsync(new LabelDemoPage())) }, new TextCell { Text = "Image", Command = new Command(async () => await Navigation.PushAsync(new ImageDemoPage())) }, new TextCell { Text = "BoxView", Command = new Command(async () => await Navigation.PushAsync(new BoxViewDemoPage())) }, new TextCell { Text = "WebView", Command = new Command(async () => await Navigation.PushAsync(new WebViewDemoPage())) }, } } }; // Build the page. this.Content = new StackLayout { Children = { header, tableView } }; } } }
else if (username.Text == "kanak" && password.Text == "1234")
{
Navigation.PushAsync(new <App-Root-name>.<folder-name>.<Class-Name>());
}
在代码中。 <App-Root-name>
和<folder-name>
和<Class-Name>
是什么意思???