-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathMailFocusedViewModel.cs
More file actions
38 lines (30 loc) · 1.03 KB
/
MailFocusedViewModel.cs
File metadata and controls
38 lines (30 loc) · 1.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System;
using System.Collections.ObjectModel;
using Prism;
using Prism.Commands;
using SampleApp.Common;
using SampleApp.Common.Models;
using SampleApp.Services;
namespace SampleApp.Modules.Mail.ViewModels;
public class MailFocusedViewModel : ViewModelBase, IActiveAware
{
private bool _isActive;
private IMailService _mailService;
public MailFocusedViewModel(IMailService mailService)
{
_mailService = mailService;
MailMessages = new ObservableCollection<MailMessage>(_mailService.Messages);
}
public event EventHandler? IsActiveChanged;
/// <summary>Xamarin.Forms only, this never gets hit.</summary>
public bool IsActive { get => _isActive; set => SetProperty(ref _isActive, value, RaiseIsActiveChanged);}
public DelegateCommand CmdTabClicked => new(() =>
{
System.Diagnostics.Debug.WriteLine("Tab clicked?");
});
public ObservableCollection<MailMessage> MailMessages { get; private set; }
protected virtual void RaiseIsActiveChanged()
{
IsActiveChanged?.Invoke(this, EventArgs.Empty);
}
}