Exemple #1
0
        private void buscarCPAAction_Execute(object sender, CustomizePopupWindowParamsEventArgs e)
        {
            var dir = ((PersonaDireccion)View.CurrentObject).Direccion;
            var loc = dir.Localidad != null ? dir.Localidad.Nombre : dir.LocalidadOtra;

            if (dir.Provincia == null)
            {
                throw new UserFriendlyException("Debe indicar primero la provincia.");
            }

            var prov = dir.Provincia.Codigo;

            IList <CPA.LocalidadResultItem> locs;

            if (prov == "C")
            {
                locs = new List <CPA.LocalidadResultItem>
                {
                    new CPA.LocalidadResultItem
                    {
                        Codigo          = 5001,
                        CodigoProvincia = "C",
                        Nombre          = "Ciudad Autonoma de Buenos Aires"
                    }
                };
            }
            else
            {
                locs = CPA.ObtenerLocalidades(prov, loc);
            }

            var collectionSource = new CollectionSource(ObjectSpace, typeof(CPA.LocalidadResultItem));

            foreach (var loci in locs)
            {
                collectionSource.Add(loci);
            }

            var view = Application.CreateListView(Application.GetListViewId(typeof(CPA.LocalidadResultItem)),
                                                  collectionSource, false);

            view.Editor.AllowEdit = false;
            e.View = view;

            e.DialogController.SaveOnAccept = false;
            e.DialogController.Accepting   += DialogController_Execute;
        }