嗨,我有一个便携式Xamarin应用程序,我想从一个页面复制数据并将其移动到另一个包含SQLite数据库的页面,但是我不知道如何做到这一点。我使用 XAML 创建了一个按钮:
<Button Text = "Copy Password"
HorizontalOptions="Center"
VerticalOptions="Center"
Clicked="Button_Clicked" />
这就是我目前处理Button_Clicked的方式
async void Button_Clicked(object sender, EventArgs e)
{
await Navigation.PushAsync(new DetailsPage
{
BindingContext = new User()
});
它导航到允许输入数据的页面。我希望它使我想从第一页复制的数据已经填充了某个输入字段。例如,名称字段。
任何帮助将不胜感激。我尝试过搜索,但还没有找到任何有用的东西。
编辑多亏了科尔·夏的帮助,我才解决了。我只需要在Button_Clicked代码中添加BindingContext = new User { Name = "Cole"}
。我没有对名称进行硬编码,而是使用了另一种方法中的变量,因此它将变量的值复制到 db
在第一页:
//navigate to another page and pass the data.
private async void Button_Clicked(object sender, EventArgs e)
{
await Navigation.PushAsync(new MainPage()
{
BindingContext = new User { Name = "Cole"}
});
}
第二页
XMAL:
<Entry Text="{Binding Name}"/>
代码隐藏:
protected async override void OnAppearing()
{
base.OnAppearing();
await insertDB();
}
Task insertDB()
{
User user = this.BindingContext as User;
//insert user with db operation
}
型:
public class User {
public string Name { get; set; }
}