Inheritance: UIPickerViewModel
        public override void ViewDidLoad()
        {
            View = new UIView(){ BackgroundColor = UIColor.White};
            base.ViewDidLoad();

            // ios7 layout
            if (RespondsToSelector(new Selector("edgesForExtendedLayout")))
                EdgesForExtendedLayout = UIRectEdge.None;


            var label = new ShapeLabel(new RectangleF(10, 10, 300, 40));
            Add(label);
            var textField = new UITextField(new RectangleF(10, 50, 300, 40));
            Add(textField);
            var shapeView = new ShapeView(new RectangleF(60, 90, 200, 200));
            Add(shapeView);

            var picker = new UIPickerView();
            var pickerViewModel = new MvxPickerViewModel(picker);
            picker.Model = pickerViewModel;
            picker.ShowSelectionIndicator = true;
            textField.InputView = picker;

            var set = this.CreateBindingSet<FirstView, Core.ViewModels.FirstViewModel>();
            set.Bind(label).For(s => s.TheShape).To(vm => vm.Shape);
            set.Bind(textField).To(vm => vm.Shape);
            set.Bind(pickerViewModel).For(p => p.ItemsSource).To(vm => vm.List);
            set.Bind(pickerViewModel).For(p => p.SelectedItem).To(vm => vm.Shape);
            set.Bind(shapeView).For(s => s.TheShape).To(vm => vm.Shape);
            set.Apply();

            var g = new UITapGestureRecognizer(() => textField.ResignFirstResponder());
            View.AddGestureRecognizer(g);
        }
        public override void ViewDidLoad()
        {
            View = new UIView(){ BackgroundColor = UIColor.White};
            base.ViewDidLoad();

            // ios7 layout
            if (RespondsToSelector(new Selector("edgesForExtendedLayout")))
                EdgesForExtendedLayout = UIRectEdge.None;

            var textFieldTitle = new UITextField(new RectangleF(10, 10, 300, 30));
            Add(textFieldTitle);
            var picker = new UIPickerView();
            var pickerViewModel = new MvxPickerViewModel(picker);
            picker.Model = pickerViewModel;
            picker.ShowSelectionIndicator = true; 
            textFieldTitle.InputView = picker;

            var textFieldFirstName = new UITextField(new RectangleF(10, 40, 300, 30));
            Add(textFieldFirstName);
            var textFieldLastName = new UITextField(new RectangleF(10, 70, 300, 30));
            Add(textFieldLastName);
            var acceptedLabel = new UILabel(new RectangleF(10, 100, 200, 30));
            acceptedLabel.Text = "Accepted?";
            Add(acceptedLabel);
            var accepted = new UISwitch(new RectangleF(210, 100, 100, 30));
            Add(accepted);
            var add = new UIButton(UIButtonType.RoundedRect);
            add.SetTitle("Add", UIControlState.Normal);
            add.TintColor = UIColor.Purple;
            add.Frame = new RectangleF(10,130,300,30);
            Add(add);

            var table = new UITableView(new RectangleF(10, 160, 300, 300));
            Add(table);
            var source = new MvxStandardTableViewSource(table, "TitleText FirstName");
            table.Source = source;

            var set = this.CreateBindingSet<FirstView, Core.ViewModels.FirstViewModel>();
            set.Bind(textFieldFirstName).To(vm => vm.FirstName);
            set.Bind(textFieldLastName).To(vm => vm.LastName);
            set.Bind(pickerViewModel).For(p => p.ItemsSource).To(vm => vm.Titles);
            set.Bind(pickerViewModel).For(p => p.SelectedItem).To(vm => vm.Title);
            set.Bind(textFieldTitle).To(vm => vm.Title);
            set.Bind(accepted).To(vm => vm.Accepted);
            set.Bind(add).To("Add");
            set.Bind(source).To(vm => vm.People);
            set.Apply();

            var tap = new UITapGestureRecognizer(() =>
                {
                    foreach (var view in View.Subviews)
                    {
                        var text = view as UITextField;
                        if (text != null)
                            text.ResignFirstResponder();
                    }
                });
            View.AddGestureRecognizer(tap);
        }
 void SetUpDoctorBindings(MvxFluentBindingDescriptionSet<NewAppointmentView, NewAppointmentViewModel> set)
 {
     set.Bind(doctorTextField).To(vm => vm.SelectedDoctor.Name).OneWay();
     _doctorPicker = new UIPickerView {
         ShowSelectionIndicator = true
     };
     var doctorPickerViewModel = new MvxPickerViewModel(_doctorPicker);
     _doctorPicker.Model = doctorPickerViewModel;
     set.Bind(doctorPickerViewModel).For(p => p.ItemsSource).To(vm => vm.Doctors).OneWay();
     set.Bind(doctorPickerViewModel).For(p => p.SelectedItem).To(vm => vm.SelectedDoctor).OneWayToSource();
 }
 void SetUpHourBindings(MvxFluentBindingDescriptionSet<NewAppointmentView, NewAppointmentViewModel> set)
 {
     set.Bind(hourTextField).To(vm => vm.SelectedHour).OneWay();
     _hourPicker = new UIPickerView {
         ShowSelectionIndicator = true
     };
     var hourPickerViewModel = new MvxPickerViewModel(_hourPicker);
     _hourPicker.Model = hourPickerViewModel;
     set.Bind(hourPickerViewModel).For(p => p.ItemsSource).To(vm => vm.PossibleHours).OneWay();
     set.Bind(hourPickerViewModel).For(p => p.SelectedItem).To(vm => vm.SelectedHour).OneWayToSource();
 }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();

            // Perform any additional setup after loading the view, typically from a nib.
            var pickerViewModel = new MvxPickerViewModel (this.AddDeviceSelections);
            this.AddDeviceSelections.Model = pickerViewModel;
            this.AddDeviceSelections.ShowSelectionIndicator = true;

            var set = this.CreateBindingSet<AddUserDeviceView, AddUserDeviceViewModel> ();
            set.Bind (pickerViewModel).For (p => p.ItemsSource).To (vm => vm.DeviceSelections);
            set.Bind (pickerViewModel).For (p => p.SelectedItem).To (vm => vm.DeviceSelection);
            set.Bind (this.AddDeviceButton).To (vm => vm.AddCommand);
            set.Apply ();
        }
示例#6
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var picker = new UIPickerView();
            var pickerViewModel = new MvxPickerViewModel(picker);
            picker.Model = pickerViewModel;
            picker.ShowSelectionIndicator = true;
            var textView = new UITextField(new CGRect(10, 100, 300, 30));
            Add(textView);
            textView.InputView = picker;
            var label = new UILabel(new CGRect(10, 130, 300, 30));
            Add(label);

            var set = this.CreateBindingSet<SpinnerView, SpinnerViewModel>();
            set.Bind(pickerViewModel).For(p => p.SelectedItem).To(vm => vm.SelectedItem);
            set.Bind(pickerViewModel).For(p => p.ItemsSource).To(vm => vm.Items);
            set.Bind(textView).To(vm => vm.SelectedItem);
            set.Bind(label).To(vm => vm.SelectedItem);
            set.Apply();
        }
 void SetUpSpecialityBindings(MvxFluentBindingDescriptionSet<NewAppointmentView, NewAppointmentViewModel> set)
 {
     set.Bind(specialityTextField).To(vm => vm.SelectedSpeciality).OneWay();
     _specialityPicker = new UIPickerView {
         ShowSelectionIndicator = true
     };
     var specialityPickerViewModel = new MvxPickerViewModel(_specialityPicker);
     _specialityPicker.Model = specialityPickerViewModel;
     set.Bind(specialityPickerViewModel).For(p => p.ItemsSource).To(vm => vm.AvailableSpecialities).OneTime();
     set.Bind(specialityPickerViewModel).For(p => p.SelectedItem).To(vm => vm.SelectedSpeciality).OneWayToSource();
 }
示例#8
0
		void EnsureFilterPanelCreated()
		{
			if (null == _filterOptions)
			{
				_overlay = new UIView();
				_overlay.AddGestureRecognizer(new UITapGestureRecognizer(ToggleFilterPanel));
				_overlay.Frame = new RectangleF(PointF.Empty, View.Frame.Size);
				_filterOptions = new UIPickerView();
				_filterOptions.BackgroundColor = UIColor.White;
				_overlay.AddSubview(_filterOptions);
				_filterModel = new MvxPickerViewModel(_filterOptions);
				_filterModel.ItemsSource = new[] {
					"Alle",
					"Bøker",
					"CDer",
					"Filmer",
					"Journaler",
					"Lydbøker",
					"Noter",
					"Spill",
					"Annet"
				};
				_filterModel.SelectedItem = "Alle";
				_filterModel.SelectedItemChanged += HandleFilterChanged;
				_filterOptions.Model = _filterModel;
			}
		}
        private void SetupBindings()
        {
            this.CreateBinding(txtSubject).For(c => c.Text).To((AddIncidentViewModel property) => property.Subject).Apply();
            this.CreateBinding(txtDescription).For(c => c.Text).To((AddIncidentViewModel property) => property.Description).Apply();
            this.CreateBinding(imgPhoto).For(c => c.Image).To((AddIncidentViewModel property) => property.Image).WithConversion("ByteBitmap").Apply();
            this.CreateBinding(conPhotoHeight).For(c => c.Constant).To<AddIncidentViewModel>(vm => vm.Image).WithConversion("ByteBitmapHiddenHeight", 201).Apply();

            this.CreateBinding(btnSaveIncident).To<AddIncidentViewModel>(vm => vm.SaveNewIncidentCommand).Apply();
            this.CreateBinding(btnRemoveImage).To<AddIncidentViewModel>(vm => vm.RemoveImageCommand).Apply();
            this.CreateBinding(btnRemoveImage).For(c => c.Hidden).To<AddIncidentDetailViewModel>(vm => vm.Image).WithConversion("ByteBitmapHidden").Apply();
            this.CreateBinding(btnAudioNote).To<AddIncidentViewModel>(vm => vm.PlayAudioCommand).Apply();
            this.CreateBinding(btnAudioNote).For(c => c.Hidden).To<AddIncidentDetailViewModel>(vm => vm.AudioRecording).WithConversion("ByteBitmapHidden").Apply();
            this.CreateBinding(conAudioHeight).For(c => c.Constant).To<AddIncidentViewModel>(vm => vm.AudioRecording).WithConversion("ByteBitmapHiddenHeight", 34).Apply();
            this.CreateBinding(btnRemoveAudio).To<AddIncidentViewModel>(vm => vm.RemoveAudioCommand).Apply();
            this.CreateBinding(btnRemoveAudio).For(c => c.Hidden).To<AddIncidentDetailViewModel>(vm => vm.AudioRecording).WithConversion("ByteBitmapHidden").Apply();

            // A little more work involved in binding to the picker
            var pickerViewModel = new MvxPickerViewModel(pkrAssigned);
            pkrAssigned.Model = pickerViewModel;
            pkrAssigned.ShowSelectionIndicator = true;
            pickerViewModel.SelectedItemChanged += (sender, args) =>
            {
                var selectedAssignee = (UserProfile)pickerViewModel.SelectedItem;
                ViewModel.AssignedToId = selectedAssignee.UserId;
            };

            var pickerBindingSet = this.CreateBindingSet<AddIncidentViewController, AddIncidentViewModel>();
            pickerBindingSet.Bind(pickerViewModel).For(c => c.ItemsSource).To(vm => vm.Workers);
            pickerBindingSet.Apply();
        }