我有一个用于xamarin编辑器的ios定制渲染,我试图将Control.ScrollEnabled
属性设置为在某些页面上为true,在其他页面上为false。
[assembly: ExportRenderer(typeof(ExtendedEditor), typeof(ExtendedEditorRenderer))]
namespace My.iOS.Renderers
{
public class ExtendedEditorRenderer : EditorRenderer
{
public ExtendedEditor ExtendedEditorElement => Element as ExtendedEditor;
protected override void OnElementChanged(ElementChangedEventArgs<Editor> e)
{
base.OnElementChanged(e);
if (e.NewElement != null)
{
Control.ScrollEnabled = false;
}
}
}
}
以上是我的客户渲染器代码。如您所见,ScrollEnabled
属性始终设置为false。
有没有一种方法可以访问这些属性(例如,scrollenable,bordercolor,backgroundcolor等)并从XAML进行更改?
答案 0 :(得分:1)
您将需要在 ExtendedEditor 控件上创建Properties/BindableProperties
,然后使用创建的ExtendedEditorElement
属性访问渲染器中的那些。
当您在 ExtendedEditor 类中声明了属性时,可以访问以下内容:
protected override void OnElementChanged(ElementChangedEventArgs<Editor> e)
{
base.OnElementChanged(e);
if (e.NewElement != null)
{
Control.ScrollEnabled = ExtendedEditorElement.ScrollEnabled;
}
}