[我们将Xamarin.Forms
与MacOS
结合使用,并具有自定义视图MyCustomView : Xamarin.Forms.ContentView
,我正在尝试为我们的视图创建自定义视图渲染器,但是它会干扰渲染的视图。
有人知道如何在我的平台项目中创建视图渲染器吗?
这是我到目前为止尝试过的代码,在类似的地方查看:
[assembly: Xamarin.Forms.ExportRenderer(typeof(MyCustomView), typeof(MyCustomViewRenderer))]
namespace Mac.Renderers
{
public class MyCustomViewRenderer : ViewRenderer<Xamarin.Forms.ContentView, AppKit.NSView>
{
public MyCustomViewRenderer()
{
// My implementation
}
}
}
实现空白时的事件,使用此自定义渲染器会影响ContentView的显示,因此我认为这段代码一定不正确-有没有办法做到这一点?
您可以通过将类更改为从VisualElementRenderer<T>
继承来解决您的问题。
[assembly: Xamarin.Forms.ExportRenderer(typeof(MyCustomView), typeof(MyCustomViewRenderer))]
namespace Mac.Renderers
{
public class MyCustomViewRenderer : VisualElementRenderer<ContentView>
{
public MyCustomViewRenderer()
{
// My implementation
}
}
}
页面具有默认的渲染器“ PageRenderer”,不明白为什么ContentView没有。如果有ContentViewRenderer,那就太好了。
希望有帮助。-