コード例 #1
0
ファイル: CreateProjectView.cs プロジェクト: nvduc2910/ShopIt
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            ViewModel.View = this;

            tapScreen                      = new UITapGestureRecognizer(InviteCommand);
            tapScreen.Delegate             = this;
            tapScreen.CancelsTouchesInView = false;

            var set = this.CreateBindingSet <CreateProjectView, CreateProjectViewModel>();

            set.Bind(btnAddDescription).To(vm => vm.AddDescriptionCommand);
            set.Bind(tfProjectName).To(vm => vm.Title);

            set.Bind(btnClear).To(vm => vm.ClearProjectNameCommand);
            set.Bind(btnClose).To(vm => vm.CloseCommand);
            set.Bind(tfEmailInvite).To(vm => vm.EmailInvite);

            set.Bind(lbDescription).To(vm => vm.Description);
            set.Bind(btnTender).To(vm => vm.TenderCommand);
            set.Bind(btnSite).To(vm => vm.SiteCommand);

            set.Bind(btnTender).For(v => v.Selected).To(vm => vm.IsSelecteTender);
            set.Bind(btnSite).For(v => v.Selected).To(vm => vm.IsSelecteTender).WithConversion("TrueFalse");

            tfEmailInvite.ShouldReturn += TfEmailInvite_ShouldReturn;

            var inviteSource = new InviteCreateProjectTableViewSource(tbInvite);

            set.Bind(inviteSource).For(s => s.ItemsSource).To(vm => vm.Invites);
            tbInvite.Source = inviteSource;

            var contactSource = new SuggestedContactsTableViewSource(tbSuggestedContacts, this);

            set.Bind(contactSource).For(s => s.ItemsSource).To(vm => vm.SuggestedContacts);
            tbSuggestedContacts.Source = contactSource;

            set.Bind(tbSuggestedContacts).For(v => v.Hidden).To(vm => vm.ShowSuggestedContacts).WithConversion("TrueFalse");

            //set.Bind(ivTender).For(s => s.Highlighted).To(vm => vm.IsSelecteTender);
            //set.Bind(ivSite).For(s => s.Highlighted).To(vm => vm.IsSelecteTender).WithConversion("TrueFalse");

            set.Bind(btnSaveProject).To(vm => vm.SaveProjectCommand);

            set.Bind(lbLeghtTitle).To(vm => vm.LeghtTitle);

            tfProjectName.ShouldChangeCharacters += (textField, range, replacementString) =>
            {
                var newLength = textField.Text.Length + replacementString.Length - range.Length;
                return(newLength <= 20);
            };

            set.Apply();
        }
コード例 #2
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            ViewModel.View = this;

            InitView();

            var set = this.CreateBindingSet <EditProjectView, EditProjectViewModel>();

            set.Bind(tfProjectTitle).To(vm => vm.Title);
            set.Bind(btnClearTitle).To(vm => vm.ClearTitleCommand);

            set.Bind(lbDescription).To(vm => vm.Description);
            set.Bind(tfEmailAddress).To(vm => vm.EmailInvite);
            set.Bind(btnShowMore).To(vm => vm.ShowMoreCurrentTracesCommand);
            set.Bind(btnShowMore).For(s => s.Hidden).To(vm => vm.IsShowMoreButton).WithConversion("TrueFalse");

            set.Bind(btnTender).For(v => v.Selected).To(vm => vm.IsTenderStage);
            set.Bind(btnSite).For(v => v.Selected).To(vm => vm.IsSiteStage);
            set.Bind(btnTender).To(vm => vm.TenderCommand);
            set.Bind(btnSite).To(vm => vm.SiteCommand);

            var currentTracesTableSoure = new CurrentTradesTableViewSource(tbCurrentTraces, this);

            set.Bind(currentTracesTableSoure).For(s => s.ItemsSource).To(vm => vm.CurrentTrades);
            tbCurrentTraces.Source = currentTracesTableSoure;

            var inviteTableSource = new InviteEditProjectTableViewSource(tbInviteTraces);

            set.Bind(inviteTableSource).For(s => s.ItemsSource).To(vm => vm.InviteTrades);
            tbInviteTraces.Source = inviteTableSource;

            var contactSource = new SuggestedContactsTableViewSource(tbSuggestedContacts, this);

            set.Bind(contactSource).For(s => s.ItemsSource).To(vm => vm.SuggestedContacts);
            tbSuggestedContacts.Source = contactSource;

            set.Bind(tbSuggestedContacts).For(v => v.Hidden).To(vm => vm.ShowSuggestedContacts).WithConversion("TrueFalse");

            tfEmailAddress.ShouldReturn += tfEmailAddress_ShouldReturn;
            set.Bind(btnSendInvite).To(vm => vm.SendInviteCommand);

            set.Bind(btnEditDescription).To(vm => vm.EditDescriptionCommand);

            set.Bind(btnSaveProject).To(vm => vm.SaveAndUpdateCommand);

            set.Bind(btnDeleteProject).To(vm => vm.DeleteProjectCommand);

            set.Bind(btnClose).To(vm => vm.GoBackCommand);

            set.Apply();
        }