C#Monotouch/Xamarin-EntryElement应更改字符事件

C#Monotouch/Xamarin-EntryElement应更改字符事件,c#,xamarin.ios,xamarin,monotouch.dialog,entryelement,C#,Xamarin.ios,Xamarin,Monotouch.dialog,Entryelement,关于如何在monotouch EntryElement类上实现ShouldChangeCharacters事件,是否有人提供代码示例或建议 大概我需要继承EntryElement并实现一个UITextField(它有ShouldChangeCharacters事件)……但我在继承类等时暴露事件方面没有太多经验 看起来我应该做以下事情,但是我如何公开这个ShouldChangeCharacters事件呢 using MonoTouch.Dialog; using MonoTouch.UIKit;

关于如何在monotouch EntryElement类上实现ShouldChangeCharacters事件,是否有人提供代码示例或建议

大概我需要继承EntryElement并实现一个UITextField(它有ShouldChangeCharacters事件)……但我在继承类等时暴露事件方面没有太多经验

看起来我应该做以下事情,但是我如何公开这个ShouldChangeCharacters事件呢

using MonoTouch.Dialog;
using MonoTouch.UIKit;

class MyEntryElement : EntryElement 
{

    protected override UITextField CreateTextField(RectangleF frame)
    {
        var field = base.CreateTextField(frame);

        //How do I expose this?
        //field.ShouldChangeCharacters

        return field;
    }

}
基本上,我希望能够键入:

MyEntryElement test = new MyEntryElement ();
        test.ShouldChangeCharacters += etc....

您几乎拥有了它,只需将
字段
设置为类级别变量,并为其设置公共属性。你也可以为一个事件创建一个属性,然后将它赋给字段,但我认为这稍微复杂一些

类MyEntryElement:EntryElement
{
UITextField;//类级别变量
受保护的覆盖UITextField CreateTextField(矩形框架)
{
field=base.CreateTextField(框架);
//我该如何揭露这一点?
//field.ShouldChangeCharacters
返回字段;
}
公共UITextField字段{
获取{返回字段;}
}
}
现在您可以执行以下操作:

myentrylement测试=新的myentrylement();
test.Field.ShouldChangeCharacters+=等。。。。