예제 #1
0
 public virtual void OnVerb(object sender, EventArgs evevent)
 {
     if (sender != null && sender is HostVerb)
     {
         HostVerb vd = (HostVerb)sender;
         vd.Invoke((AxHost)axHost);
     }
     else
     {
         Debug.Fail("Bad verb invocation.");
     }
 }
예제 #2
0
        //

        /// <summary>
        /// Executes Open/Close on MvvmBinders
        /// </summary>
        /// <param name="verb"></param>
        /// <param name="param"></param>
        public void Execute(HostVerb verb, object param, object arg = null)
        {
            if (verb == HostVerb.Open)
            {
                // REQUIRED:  The Caption strings must match the x:Name string of the View
                if (param.ToString() == "Administration")
                {
                    var binder = GetNewAdministrationView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "Properties")
                {
                    var binder = GetNewPropertyDetailView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "PropertyEdit")
                {
                    var binder = GetNewPropertyEditView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "Owners")
                {
                    var binder = GetNewOwnersView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "ChangeOwner")
                {
                    var binder = GetNewChangeOwnerView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "OwnershipHistory")
                {
                    var binder = GetNewOwnershipHistoryView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "EditOwner")
                {
                    var binder = GetNewOwnerEditView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "FinancialTransaction")
                {
                    var binder = GetNewFinancialTransactionView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "WaterShutoff")
                {
                    var binder = GetNewWaterShutoffView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "WaterShutoffEdit")
                {
                    var binder = GetNewWaterShutoffEditView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "ImportBalances")
                {
                    var binder = GetNewOwnerBalanceUpdatedView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "GolfCart")
                {
                    var binder = GetNewGolfCartView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "WaterMeter")
                {
                    var binder = GetNewWaterMeterView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "WaterMeterEdit")
                {
                    var binder = GetNewWaterMeterEditView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "WellMeter")
                {
                    var binder = GetNewWellMeterView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "Invoices")
                {
                    var binder = GetNewInvoiceView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "Graph Facilities")
                {
                    var binder = GetNewFacilityUsageGraphView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
                else if (param.ToString() == "Report Carousel")
                {
                    var binder = GetNewReportCarouselView(arg);
                    this.OpenMvvmBinders.Add(binder);
                }
            }
            else if (verb == HostVerb.Close)
            {
                string parameter = param as String;
                try
                {
                    var  r      = this.OpenMvvmBinders.Where(x => x.ViewModel.Caption.Replace(" ", "") == parameter.Replace(" ", "")).FirstOrDefault();
                    bool result = this.OpenMvvmBinders.Remove(r);

                    // If we are closing one of the Edit forms, raise a refresh PropertyChanged event to let the
                    // detail view(s) know that data may have changed.
                    //if (parameter.Contains("Edit"))
                    //{
                    //    RaisePropertyChanged("Refresh");
                    //}
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Host Error: " + ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }