内容视图似乎没有加载事件,而且我似乎也找不到任何方法可以覆盖显示方法。有没有一种方法可以在加载时实现。
答案 0 :(得分:1)
不幸的是,目前这不可能。
Github问题中有一个功能要求。您可以在https://github.com/xamarin/Xamarin.Forms/issues/3486和https://github.com/xamarin/Xamarin.Forms/issues/2210这里关注它。
同时,您可以创建(一个很脏的hack)两个公共方法,并从您的OnAppearing()
/ OnDissapearing()
页面回调中调用它们。
<local:MyContentView x:Name="MyContentView" HeightRequest="100" WidthRequest="100">
</local:MyContentView>
页面上的代码隐藏
protected override void OnAppearing()
{
base.OnAppearing();
(MyContentView as MyContentView)?.PageAppearing();
}
protected override void OnDisappearing()
{
base.OnDisappearing();
(MyContentView as MyContentView)?.PageDisappearing();
}
您的ContentView:
public partial class MyContentView : ContentView
{
public MyContentView()
{
InitializeComponent();
}
public void PageAppearing()
{
}
public void PageDisappearing()
{
}
}
注意:如果您要对许多ContentView
进行此操作,则可能会对此代码进行改进,例如使用ContentViews将实现的接口并使用该接口从页面进行转换。
希望这给您一个主意。