コード例 #1
0
        public async override void ViewDidLoad()
        {
            base.ViewDidLoad();

            if (Initialized)
            {
                return;
            }
            Initialized = true;

            this.View = new MainView();

            // create binding manager
            Bindings = new BindingManager(this.View);

            ((MainView)this.View).btnSave.TouchUpInside          += SaveButton_Click;
            ((MainView)this.View).btnCancel.TouchUpInside        += CancelButton_Click;
            ((MainView)this.View).btnMarkForDelete.TouchUpInside += DeleteButton_Click;

            ((MainView)this.View).txtName.ShouldReturn += (textField) =>
            {
                textField.ResignFirstResponder();
                return(true);
            };

            var waitingOverlay = new WaitingOverlay(UIScreen.MainScreen.Bounds, "Loading...");

            View.Add(waitingOverlay);

            try
            {
                this.Model = await CustomerEdit.GetCustomerEditAsync(1);

                InitializeBindings(this.Model);
            }
            catch (Exception ex)
            {
                var alert = new UIAlertView();
                alert.Message = string.Format("the following error has occurred: {0}", ex.Message);
                alert.AddButton("Close");
                alert.DismissWithClickedButtonIndex(0, false);
                alert.Show();
            }
            finally
            {
                waitingOverlay.Hide();
            }
        }