拉出桌子时,表格单元格似乎失去了约束力

时间:2014-02-28 15:47:15

标签: ios xamarin mvvmcross

我使用MVVMCross的Xamarin IOS项目存在问题。有一个MvxTableViewController,它显示各种MvxTableViewCells。当用户触摸单元格中的文本字段内部然后向上拉表格视图控制器时,聚焦单元格中的数据将消失。据我所知,这个手势后没有应用程序代码执行。

我已经附加了屏幕,显示屏幕上拉之前,期间和之后的数据。在此活动期间,没有消息写入控制台。

知道我应该在哪里寻找这个问题吗? Here is the screen before doing anything with it

Here is the screen being pulled up

Here is the screen after the gesture.  Notice the data in the text field is gone, the label is gone and the textfield is disabled (this value is also a binding).

更新

以下是用于绑定单元格构造函数中的值的代码。还有一些不仅仅是绑定,但我把它包括在一起,以防它影响到这个问题。

谢谢!

public BaseComponentCell (IntPtr handle) : base (handle)        
{

this.DelayBind (() => {

    ComponentValueTextField.ShouldReturn += (textField) => {
        textField.ResignFirstResponder ();

        var component = (BaseComponent)DataContext;

        if(component.DoneEditingCommand!=null){

            component.DoneEditingCommand.Execute(null);

        }

        return true;

     };

    var myComponent = (BaseComponent)DataContext;
    if (myComponent.DisplayNumberPadKeyboard)
    {
        ComponentValueTextField.KeyboardType = UIKeyboardType.NumberPad;
    }


    var set = this.CreateBindingSet<BaseComponentCell, BaseComponent> ();

    set.Bind(ComponentNameLabel).To(c=>c.ComponentName);

    set.Bind(ComponentValueTextField).To(c=>c.ComponentValue);
    set.Bind(ComponentValueTextField).For(f => f.Enabled).To(c => c.IsEnabled);
    set.Bind(this).For(bc=>bc.IsSecure).To(c=>c.IsSecure);

    set.Apply();



});

}

0 个答案:

没有答案