Xamarin.forms 自定义 Entry 使用自定义呈现器
图片:
1、添加自定义Entry子类
using System;
using System.Collections.Generic;
using System.Text;
using Xamarin.Forms;
namespace BuildTextBox
{
public class MyEntry : Entry
{
public MyEntry()
{
}
}
}
2、创建自定义呈现器
using Android.Content;
using BuildTextBox;
using Xamarin.Forms;
using CustomRenderer;
using Android.Graphics.Drawables;
using Xamarin.Forms.Platform.Android;
[assembly: ExportRenderer(typeof(MyEntry), typeof(MyEntryRenderer))]
namespace CustomRenderer
{
class MyEntryRenderer : EntryRenderer
{
public MyEntryRenderer(Context context) : base(context)
{
}
protected override void OnElementChanged(ElementChangedEventArgs<Entry> e)
{
base.OnElementChanged(e);
if (Control != null)
{
GradientDrawable gd = new GradientDrawable();
gd.SetColor(null);
gd.SetCornerRadius(10);
gd.SetStroke(10, Android.Graphics.Color.LightGray);//边框宽度和边框颜色
this.Control.SetBackgroundDrawable(gd);
}
}
}
}