public MainViewModel() { WinConsole.Initialize(); ExitCommand = new Command(Exit); ConsoleCommand = new Command(p => WinConsole.Visible = !WinConsole.Visible); AddCommand = new Command(Add); DeleteCommand = new Command(Delete) { CanExecuteFunction = p => CanDelete }; EditCommand = new Command(Edit) { CanExecuteFunction = p => CanEdit }; AboutCommand = new Command(ShowAboutDialog); LoadCommand = new Command(Load); SaveCommand = new Command(Save); ClearFilterCommand = new Command(() => FilterText = ""); CalcCommand = new Command(Calculate); OpenFileCommand = new Command { CanExecuteFunction = p => true, ExecuteFunction = p => OpenFile() }; People = new ObservableCollection <Person>(); Config = new Configurator(); PeopleView = CollectionViewSource.GetDefaultView(People); PeopleView.Filter = obj => { if (FilterText.IsEmpty()) { return(true); } var p = obj as Person; return(p != null && p.FullName.IndexOf(FilterText, StringComparison.CurrentCultureIgnoreCase) >= 0); }; Initialize(); }