コード例 #1
0
        internal static IObservable <Unit> Connect(this ApplicationModulesManager applicationModulesManager, XafApplication application)
        {
            if (application == null)
            {
                return(Observable.Empty <Unit>());
            }
            var listViewProcessSelectedItem = application.WhenMasterDetailListViewProcessSelectedItem().Publish().AutoConnect();

            return(application.WhenSynchronizeDetailView()
                   .Merge(listViewProcessSelectedItem.ToUnit())
                   .Merge(application.DisableListViewController("ListViewFastCallbackHandlerController"))
                   .Merge(application.DisableDetailViewViewController("ActionsFastCallbackHandlerController"))
                   .Merge(application.WhenSaveAction())
                   .Merge(application.WhenRefreshListView())
                   .Merge(applicationModulesManager.RegisterActions().ToUnit())
                   .ToUnit());
        }