2012-03-22 47 views
0

有没有办法在MonoTouch对话框DateElement上获取更改值的事件? Tapped事件从未被击中,并且datePicker属性为空,因此我无法挂钩到ValueChanged事件。有任何想法吗?DateElement值更改事件

我想设置其他字段的值,当日期发生变化,我找不到一种方法来做到这一点。

回答

0

我不知道这是否是实现您想要做的事情的最佳方式,但是您可以扩展DateElement以在选择该值时触发事件。

下面是一个例子DateElement:

public class CustomDateElement : DateElement 
{ 
    public event System.Action<CustomDateElement> DateChanged; 

    public CustomDateElement(string caption, DateTime date) : base(caption, date) {} 

    public override string FormatDate (DateTime dt) 
    { 
     if (DateChanged != null) 
      DateChanged(this, dt); 

     return base.FormatDate (dt); 
    } 
} 

这里是如何使用新的CustomDateElement一个例子:

var dateElement = new CustomDateElement ("Due Date", model.Birthday); 

dateElement.DateChanged += (obj) => { 
    Console.WriteLine(obj.DateValue); 
}; 
+0

因为我已经通过GitHub上MonotTouch.Dialog来源看,有是您现在可以使用的新的DateSelected事件。但似乎还没有工作100%。 – 2012-03-24 02:22:31