示例#1
0
        public void AbrirAuxiliarCommandHandler(object parameters)
        {
            ListadoContratosView listadoAuxiliar = new ListadoContratosView(); // Lo llamamos como auxiliar de búsqueda

            // Aprovechamos el patrón decorator para implementar funcionalidad extra sin romper MVVM

            ListadoAuxiliarDecorator listadoAuxiliarDecorator = new ListadoAuxiliarDecorator();

            listadoAuxiliarDecorator.SetComponent(listadoAuxiliar); // Le asignamos el componente


            listadoAuxiliar.Show();

            listadoAuxiliarDecorator.SeleccionContrato += (listado, args) =>
            {
                if (args.Contrato == null)
                {
                    this.Contrato = new NullContratoEntity();
                }

                this.Contrato = args.Contrato;

                if (args.Contrato.Cliente == null)
                {
                    this.Contrato.Cliente   = new NullClienteEntity();
                    this.RutBusquedaCliente = null;
                }
                else
                {
                    this.Contrato.Cliente   = args.Contrato.Cliente;
                    this.RutBusquedaCliente = args.Contrato.Cliente.Rut;
                }

                listadoAuxiliar.Close();
            };
        }