由於可用的分組和其他功能,我正在使用SfListView。 但是,我需要禁用滾動Android和iOS中的列表視圖。 如何爲SfListView編寫自定義渲染器? 對於Xamarin表單ListView,我只能擴展ListViewRenderer類並重寫OnElementChanged方法。如何爲SfListView編寫自定義渲染器來禁用滾動?
另外,如何導出自定義渲染器?
例如,下面的代碼爲Xamarin將工作窗體ListView(與相應的修改):
[assembly: ExportRenderer(typeof(SfListViewWithNoScroll), typeof(SfListViewWithNoScrollRenderer))]
namespace MyApp.Mobile.Droid.CustomRenderers
{
public class SfListViewWithNoScrollRenderer : //which class do I need to inherit?
{
protected override void OnElementChanged(ElementChangedEventArgs<SfListView> e)
{
//base.OnElementChanged(e);
//if (Control != null)
//{
// Control.VerticalScrollBarEnabled = false;
//}
//what do I write here?
}
}
}
在'scroller =(Xamarin.Forms.ScrollView)typeof(SfListView).GetField(「scrollView」,BindingFlags.NonPublic)行中給出'null reference exception' .GetValue(element);'。即使在將此行更改爲這裏提到的那個之後:https://www.syncfusion.com/forums/129969/how-can-i-write-a-custom-renderer-for-sflistview,我得到了相同的錯誤 –
scroller =(Xamarin.Forms.ScrollView)typeof(SfListView).GetField(「scrol lView」,BindingFlags.NonPublic | BindingFlags.Instance).GetValue(element); – Dilmah
你可以請看看這個問題:http://stackoverflow.com/questions/43679889/multiple-behaviors-in-entrybindable-property-change-is-not-reflected –