从后端而非前端绑定 (Xamarin-C#)
Bind from backend but not front-end (Xamarin-C#)
我想将模型绑定到视图。
问题是它不绑定。
this.BindingContext = Model;
stackLayoutF.Children.Add(new Entry() { Text = Model.EditFirstname, WidthRequest = 100 });
stackLayoutContent.Children.Add(stackLayoutF);
private string _editFirstname = "United";
public string EditFirstname
{
get { return _editFirstname; }
set
{
SetProperty(ref _editFirstname, value);
}
}
它正常加载文本“United”。当我更改文本时,没有任何反应。
我可能忘记了什么。
如果你能帮我解决这个问题,请告诉我。
您没有在任何地方指定任何绑定。您将需要编写如下内容:
var entry = new Entry() { WidthRequest = 100 };
entry.SetBinding(Entry.TextProperty, nameof(ViewModel.EditFirstName));
stackLayoutF.Children.Add(entry);
这里参考官方文档,有多个这样的例子:https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/data-binding/basic-bindings
我想将模型绑定到视图。 问题是它不绑定。
this.BindingContext = Model;
stackLayoutF.Children.Add(new Entry() { Text = Model.EditFirstname, WidthRequest = 100 });
stackLayoutContent.Children.Add(stackLayoutF);
private string _editFirstname = "United";
public string EditFirstname
{
get { return _editFirstname; }
set
{
SetProperty(ref _editFirstname, value);
}
}
它正常加载文本“United”。当我更改文本时,没有任何反应。
我可能忘记了什么。
如果你能帮我解决这个问题,请告诉我。
您没有在任何地方指定任何绑定。您将需要编写如下内容:
var entry = new Entry() { WidthRequest = 100 };
entry.SetBinding(Entry.TextProperty, nameof(ViewModel.EditFirstName));
stackLayoutF.Children.Add(entry);
这里参考官方文档,有多个这样的例子:https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/data-binding/basic-bindings