示例#1
0
 public override void InitBindings()
 {
     ChooseFancyButton.SetOnClickCommand(ViewModel.AskUserAboutFancyThingsCommand);
     ShowFancyButton.SetOnClickCommand(ViewModel.ShowLastFanciedThingCommand);
     ResetButton.SetOnClickCommand(ViewModel.ResetFanciness);
     NavigateButton.SetOnClickCommand(ViewModel.NavigateSomewhereElseCommand);
     ShowDialogButton.SetOnClickCommand(ViewModel.ShowDialogCommand);
     ShowDifferentDialogButton.SetOnClickCommand(ViewModel.ShowDialogBCommand);
 }
        void ReleaseDesignerOutlets()
        {
            if (ChooseFancyButton != null)
            {
                ChooseFancyButton.Dispose();
                ChooseFancyButton = null;
            }

            if (NavigateButton != null)
            {
                NavigateButton.Dispose();
                NavigateButton = null;
            }

            if (ResetButton != null)
            {
                ResetButton.Dispose();
                ResetButton = null;
            }

            if (ShowDialogButton != null)
            {
                ShowDialogButton.Dispose();
                ShowDialogButton = null;
            }

            if (ShowDifferentDialogButton != null)
            {
                ShowDifferentDialogButton.Dispose();
                ShowDifferentDialogButton = null;
            }

            if (ShowFancyButton != null)
            {
                ShowFancyButton.Dispose();
                ShowFancyButton = null;
            }
        }
示例#3
0
 void ReleaseDesignerOutlets()
 {
     if (ClockText != null)
     {
         ClockText.Dispose();
         ClockText = null;
     }
     if (DialogNavText != null)
     {
         DialogNavText.Dispose();
         DialogNavText = null;
     }
     if (IncrementButton != null)
     {
         IncrementButton.Dispose();
         IncrementButton = null;
     }
     if (NavigateButton != null)
     {
         NavigateButton.Dispose();
         NavigateButton = null;
     }
     if (SendMessageButton != null)
     {
         SendMessageButton.Dispose();
         SendMessageButton = null;
     }
     if (ShowDialogButton != null)
     {
         ShowDialogButton.Dispose();
         ShowDialogButton = null;
     }
     if (WelcomeText != null)
     {
         WelcomeText.Dispose();
         WelcomeText = null;
     }
 }
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);

            // Illustrates how to use the Messenger by receiving a message
            // and sending a message back.
            Messenger.Default.Register <NotificationMessageAction <string> >(
                this,
                HandleNotificationMessage);

            // Binding and commanding

            // Binding between the first TextView and the WelcomeTitle property on the VM.
            // Keep track of the binding to avoid premature garbage collection
            _bindings.Add(
                this.SetBinding(
                    () => Vm.WelcomeTitle,
                    () => WelcomeText.Text));

            // Actuate the IncrementCommand on the VM.
            IncrementButton.SetCommand(
                "Click",
                Vm.IncrementCommand);

            // Create a binding that fires every time that the EditingChanged event is called
            var dialogNavBinding = this.SetBinding(
                () => DialogNavText.Text);

            // Keep track of the binding to avoid premature garbage collection
            _bindings.Add(dialogNavBinding);

            // Actuate the NavigateCommand on the VM.
            // This command needs a CommandParameter of type string.
            // This is what the dialogNavBinding provides.
            TapText.SetCommand(
                "Click",
                Vm.NavigateCommand,
                dialogNavBinding);

            // Actuate the ShowDialogCommand on the VM.
            // This command needs a CommandParameter of type string.
            // This is what the dialogNavBinding provides.
            // This button will be disabled when the content of DialogNavText
            // is empty (see ShowDialogCommand on the MainViewModel class).
            ShowDialogButton.SetCommand(
                "Click",
                Vm.ShowDialogCommand,
                dialogNavBinding);

            // Create a binding between the Clock property of the VM
            // and the ClockText TextView.
            // Keep track of the binding to avoid premature garbage collection
            _bindings.Add(this.SetBinding(
                              () => Vm.Clock,
                              () => ClockText.Text));

            // Actuate the SendMessageCommand on the VM.
            SendMessageButton.SetCommand(
                "Click",
                Vm.SendMessageCommand);
        }
示例#5
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            // Dismiss the keyboard
            DialogNavText.ShouldReturn += t =>
            {
                t.ResignFirstResponder();
                return(true);
            };

            // Binding and commanding

            // Binding between the first UILabel and the WelcomeTitle property on the VM.
            // Keep track of the binding to avoid premature garbage collection
            _bindings.Add(
                this.SetBinding(
                    () => Vm.WelcomeTitle,
                    () => WelcomeText.Text));

            // Actuate the IncrementCommand on the VM.
            IncrementButton.SetCommand(
                "TouchUpInside",
                Vm.IncrementCommand);

            // Create a binding that fires every time that the EditingChanged event is called
            var dialogNavBinding = this.SetBinding(
                () => DialogNavText.Text)
                                   .UpdateSourceTrigger("EditingChanged");

            // Keep track of the binding to avoid premature garbage collection
            _bindings.Add(dialogNavBinding);

            // Actuate the NavigateCommand on the VM.
            // This command needs a CommandParameter of type string.
            // This is what the dialogNavBinding provides.
            NavigateButton.SetCommand(
                "TouchUpInside",
                Vm.NavigateCommand,
                dialogNavBinding);

            // Actuate the ShowDialogCommand on the VM.
            // This command needs a CommandParameter of type string.
            // This is what the dialogNavBinding provides.
            // This button will be disabled when the content of DialogNavText
            // is empty (see ShowDialogCommand on the MainViewModel class).
            ShowDialogButton.SetCommand(
                "TouchUpInside",
                Vm.ShowDialogCommand,
                dialogNavBinding);

            // Create a binding between the Clock property of the VM
            // and the ClockText UILabel.
            // Keep track of the binding to avoid premature garbage collection
            _bindings.Add(
                this.SetBinding(
                    () => Vm.Clock,
                    () => ClockText.Text));

            // Actuate the SendMessageCommand on the VM.
            SendMessageButton.SetCommand(
                "TouchUpInside",
                Vm.SendMessageCommand);
        }