仅在一个Entry控件上使用自定义渲染器

时间:2018-08-14 20:26:00

标签: xamarin.forms

在我的Xamarin.Forms应用中,我有一个自定义渲染器:

[assembly: ExportRenderer(typeof(Entry), typeof(CustomEntryRenderer))]
namespace MyApp.Controls
{
    public class CustomEntryRenderer : EntryRenderer
    {
        protected override void OnElementChanged(ElementChangedEventArgs<Entry> e)
        {
            base.OnElementChanged(e);

            if (this.Control != null)
            {
                Control.Style = (Windows.UI.Xaml.Style)App.Current.Resources["CustomTextBoxStyle"];
            }
        }
    }
}

但是我只想在我的Entry控件中的一个上使用它,而不是全部。我该怎么做?

1 个答案:

答案 0 :(得分:2)

创建一个从Entry继承的自定义控件MyEntry

然后在渲染器中,指定它仅适用于MyEntry类型

[assembly: ExportRenderer(typeof(MyEntry), typeof(CustomEntryRenderer))]