public ControlListPage() { this.InitializeComponent(); viewModel = new ControlListViewModel(); this.Loaded += OnLoaded; }
/// <summary> /// Inicializa las propiedades que muestran el cómic /// </summary> protected override void InitBookView() { ComicBook comicBook = new ComicBook(); int pageIndex = 0; // Carga el archivo comicBook.Load(Book.FileName); // Crea la colección de páginas ComicPages = new ControlListViewModel(); // Rellena la colección de páginas foreach (ComicPage page in comicBook.Pages) { BookPageModel bookPage = new BookPageModel(); // Asigna las propiedades bookPage.FileName = bookPage.FileName; bookPage.PageNumber = pageIndex++; // Añade la página del libro a la lista de página ComicPages.Items.Add(new PageListItemViewModel(bookPage)); } // Asigna el manejador de eventos comicBook.ComicAction += (sender, comicArgs) => { if (comicArgs.Action == EventComicArgs.ActionType.Uncompress) { int index = comicArgs.Actual - 1; // Asigna los nombres de archivo if (index < ComicPages.Items.Count && index < comicBook.Pages.Count && ComicPages.Items[index] is PageListItemViewModel page) { page.Page.FileName = comicBook.Pages[index].FileName; page.ThumbFileName = comicBook.Pages[index].FileName; } // Si ya ha terminado, ordena los nombres if (index >= ComicPages.Items.Count - 1) { // Ordena las páginas comicBook.Pages.Sort(); // Asigna los nombres de archivo for (int indexPage = 0; indexPage < comicBook.Pages.Count; indexPage++) { if (ComicPages.Items[indexPage] is PageListItemViewModel pageItem) { pageItem.Page.FileName = comicBook.Pages[indexPage].FileName; pageItem.ThumbFileName = comicBook.Pages[indexPage].FileName; } } } // Se coloca en la primera página ShowPageReal(0); } }; // Descomprime el archivo comicBook.Uncompress(PathTarget, true); }
public SearchFilesViewModel(PluginsStudioViewModel mainViewModel) { // Inicializa las propiedades MainViewModel = mainViewModel; FoldersViewModel = new ControlListViewModel(); TreeResultsViewModel = new TreeSearchFilesResultViewModel(this); // Inicializa los comandos SearchCommand = new BaseCommand(async _ => await SearchFilesAsync(), _ => CanSearchFiles()) .AddListener(this, nameof(TextSearch)); }
public ComicContentViewModel(ComicReaderViewModel mainViewModel, string fileName) : base(false) { // Asigna las propiedades MainViewModel = mainViewModel; FileName = fileName; // Inicializa los objetos ComicPages = new ControlListViewModel(); // Inicializa los comandos FirstPageCommand = new BaseCommand(_ => GoFirstPage(), _ => CanGoFirstPage()) .AddListener(ComicPages, nameof(ComicPages.SelectedItem)); LastPageCommand = new BaseCommand(_ => GoLastPage(), _ => CanGoLastPage()) .AddListener(ComicPages, nameof(ComicPages.SelectedItem)); NextPageCommand = new BaseCommand(_ => GoNextPage(), _ => CanGoNextPage()) .AddListener(ComicPages, nameof(ComicPages.SelectedItem)); PreviousPageCommand = new BaseCommand(_ => GoPreviousPage(), _ => CanGoPreviousPage()) .AddListener(ComicPages, nameof(ComicPages.SelectedItem)); }