public static void OnHabilitarOpcao(this IAbstractViewModel vm, AbstractOpcao opcao, bool isExibirConsulta, bool isExibirCadastro, bool isExibirFiltro, bool isExibirRelatorio) { var mainCommand = vm.ElementType.GetMainCommand(); var commands = new List <ICommand> { mainCommand.GetCommand(CommandTipo.Voltar), mainCommand.GetCommand(CommandTipo.Limpar), isExibirConsulta ? mainCommand.GetCommand(CommandTipo.Listar) : null, isExibirConsulta ? mainCommand.GetCommand(CommandTipo.Exportar) : null, isExibirConsulta ? mainCommand.GetCommand(CommandTipo.Importar) : null, isExibirConsulta || isExibirRelatorio?mainCommand.GetCommand(CommandTipo.Imprimir) : null, isExibirCadastro ? mainCommand.GetCommand(CommandTipo.Consultar) : null, isExibirCadastro ? mainCommand.GetCommand(CommandTipo.Salvar) : null, isExibirCadastro ? mainCommand.GetCommand(CommandTipo.Excluir) : null, isExibirFiltro ? mainCommand.GetCommand(CommandTipo.Confirmar) : null, isExibirFiltro ? mainCommand.GetCommand(CommandTipo.Cancelar) : null, } .Where(c => c != null) .ToArray() ; vm.Commands = commands; opcao.CreateComps(commands); }
private void CreateComps(IAbstractViewModel vm, object filtro = null, AbstractSelecao selecao = null) { DataContext = vm; this.AddPainel(new DockPanel()); if (filtro != null) { this.AddPainel(filtro, dock: Dock.Top); } var dataGrid = new AbstractDataGrid(isReadOnly: !selecao?.IsSelecao ?? true); dataGrid.SetBindingDataGridLista(vm); dataGrid.SetBindingDataGridModel(vm); this.AddPainel(dataGrid); vm.Grade = dataGrid; // para uso de report //var style = FindResource("DataGridCellStyle") as Style; GetMetadata(vm, selecao) .GetCamposIgnore() .ForEach(campo => { campo.IsEditar = selecao.IsEditavel(campo.Prop.Name); dataGrid.Columns.Add(GetDataGridColumn(campo)); }); }
public static void SetBindingDataGridModel(this DataGrid dataGrid, IAbstractViewModel vm) { var binding = new Binding(nameof(vm.Model)) { Source = vm }; dataGrid.SetBindingDataGrid(binding, isSelectedItem: true); }
public static void SetBindingDataGridLista(this DataGrid dataGrid, IAbstractViewModel vm) { var binding = new Binding(nameof(vm.Lista)) { Source = vm }; dataGrid.SetBindingDataGrid(binding, isItemSource: true); }
protected void SetDataContext(IAbstractViewModel vm) { DataContext = vm; if (vm != null) { vm.FecharAction += () => btnFechar_Click(null, null); vm.ConfirmarAction += () => btnConfirmar_Click(null, null); vm.CancelarAction += () => btnCancelar_Click(null, null); } }
private void CreateComps(IAbstractViewModel vm) { DataContext = vm; this.AddPainel(new AbstractScrollViewer()); var source = new AbstractSource(vm, nameof(vm.Filtro)); vm.ElementType .GetMetadata() .GetCamposIgnore() .ForEach(campo => { this.AddCampo(source, campo, AbstractCampoTipo.Intervalo); }); }
public static object GetFiltro(this IAbstractViewModel vm) { // expressao filtro por nome ou descricao // clausula comando where // lista de filtros (inicial, final, lista) // objeto campos diferente de nulos var filterObjeto = !string.IsNullOrWhiteSpace(vm.Expressao) ? new FilterObjeto(FilterTipo.Expressao, vm.ElementType, vm.Expressao) : !string.IsNullOrWhiteSpace(vm.Clausula) ? new FilterObjeto(FilterTipo.Clausula, vm.ElementType, vm.Clausula) : vm.Filtro != null ? new FilterObjeto(FilterTipo.Filtro, vm.ElementType, vm.Filtro) : new FilterObjeto(FilterTipo.Model, vm.ElementType, vm.Model) ; return(filterObjeto); }
public static bool IsModelChavePreenchida(this IAbstractViewModel vm) { return(IsModelChavePreenchida(vm.Model)); }
public AbstractFiltro(IAbstractViewModel vm) : this() { CreateComps(vm); }
public AbstractBusca(IAbstractViewModel vm) : this() { DataContext = vm; }
public AbstractLista(IAbstractViewModel vm, object filtro = null, AbstractSelecao selecao = null) : this() { CreateComps(vm, filtro, selecao); }
public AbstractRelatorio(IAbstractViewModel vm, object filtro = null) : this() { CreateComps(vm); }
private void CreateComps(IAbstractViewModel vm, object filtro = null) { DataContext = vm; // ReportViewer }
public AbstractManut(IAbstractViewModel vm) : this() { CreateComps(vm); }
private Metadata GetMetadata(IAbstractViewModel vm, AbstractSelecao selecao = null) { return(selecao != null?selecao.GetMetadata(vm) : vm.ElementType.GetMetadata()); }
public AbstractView(IAbstractViewModel vm) { SetDataContext(vm); }
public AbstractOpcao(IAbstractViewModel vm) : this() { DataContext = vm; CreateComps(vm.Commands); }