Provê a estrutura básica de ViewModel em leitura tabular.
Adicione funções, como operações CRUD e Registro de Repositório utilizando as extensões disponíveis
public class ViewModel<T> :
System.ComponentModel.INotifyPropertyChanged,
System.IDisposable
where T : class
T
Inheritance System.Object 🡒 ViewModel
Implements System.ComponentModel.INotifyPropertyChanged, System.IDisposable
Constructors | |
---|---|
ViewModel() | |
ViewModel(long) |
Properties | |
---|---|
Arguments | |
Commands | |
IsLoading | |
LoadingMessage | |
Repository | |
SectionID | |
Services | |
State |
Methods | |
---|---|
CancelCurrentOperation() | Executa o cancelamento da operação assíncrona em andamento |
CreatActionToken() | Cria um novo token de cancelamento de operação assíncrona |
Dispose() | |
DisposeManagedCallerObjects() | Tarefa pendente: descartar o estado gerenciado (objetos gerenciados) |
DisposeUnManagedCallerObjects() | Tarefa pendente: liberar recursos não gerenciados (objetos não gerenciados) e substituir o finalizador Tarefa pendente: definir campos grandes como nulos |
FinishCurrentOperation() | Finaliza o Token de Cancelamento da operação assíncrona Finalizada |
Get() | Solicita o Get no repositório de dados. |
GetAsync() | Solicita o Get no repositório de dados. |
OnEntryPropertyChanged(object, PropertyChangedEventArgs) | Disparado quando alguma propriedade de entidade monitorada sofre alteração de valor. |
OnEntrySetup(T) | Possibilita efetuar modificações nas entidades em ações específicas dos Serviços injetados. Considere configurar todas as entidades de Repository.DataContext quando o argumento entry for null. NOTA: Corresponde aos métodos PostProcessItem() e PostProcessCollection() da EficazFrameworkV3. |
RaiseDialogMessage(MessageEventArgs) | |
RaisePropertyChanged(string) | Notifica às views que houve alteração em alguma propriedade do ViewModel |
RaiseViewModelEvent(CRUDEventArgs<T>) | Permite aos serviços a execução de Eventos de Comandos de ViewModel |
SetState(State, bool, string) | Determina o estado de Loading e a Mensagem ao usuário |
StartNewAsyncOperation() | Inicia um novo Token de Cancelamento para operações assíncronas, ao passo que cancela qualquer operação assíncrona em andamento |
Events | |
---|---|
EntryPropertyChanged | Evento disparado quando uma propriedade da Entidade do DataContext é alterada. |
ItemsFetched | Evento disparado após ao final dos métodos Get e GetAsync. |
ItemsFetching | Evento disparado antes dos métodos Get e GetAsync. |
PropertyChanged | Evento disparado quando uma propriedade do ViewModel é alterada. |
ShowMessage | Dispara uma requisição de Caixa de Diálogo para a View. |
StateChanged | Evento disparado quando o estado do ViewModel é alterado por alguma ação ou comando, indicando que pode haver notificações à view. |
ViewModelAction | Permite que os serviços executem o disparo de seus sub-eventos na classe principal. |