由于UIWebView
不公开 的属性LoadRequest
,因此您不能直接绑定到它。
如果您想使用绑定LoadRequest
,那么您可以使用以下 3 个选项:
继承MyWebView
自UIWebView
,添加一个驱动的 C# 属性,LoadRequest
然后在您的 UI 中使用该类并在您的 Swiss 绑定中使用该属性 - 例如:
[Register("MyWebView")]
public class MyWebView : UIWebView
{
public MyWebView()
{
}
public MyWebView(IntPtr handle) : base(handle)
{
}
private string _myUrl;
public string MyUrl
{
get { return _myUrl; }
set
{
if (_myUrl == value) return;
_myUrl = value;
LoadRequest(value); // or similar (I've not checked the syntax!)
}
}
}
实现自定义目标瑞士绑定并将其添加到您的 Setup.cs。此自定义绑定演示文稿中描述了此过程- 其中还包括一些示例的链接(其中一个在会议应用程序中)
如果这个属性永远不会改变,那么不要使用绑定,而是在你的 ViewDidLoad 中调用MvxViewController
LoadRequest - 例如
public void ViewDidLoad()
{
base.ViewDidLoad();
var myViewModel = (MyViewModel)ViewModel;
var url = myViewModel.Url;
TheWebView.LoadRequest(url);
}