Пример #1
0
        public TodoItemViewModel(TodoItem todoItem)
        {
            this.Model = todoItem;
            this.Title = this.Model
                .ToReactivePropertyAsSynchronized(x => x.Title)
                .SetValidateAttribute(() => this.Title);

            this.Completed = this.Model
                .ToReactivePropertyAsSynchronized(x => x.Completed);

            this.ForegroundBrush = this.Model
                .ObserveProperty(x => x.Completed)
                .Select(x => x ? new SolidColorBrush(Colors.DarkGray) : new SolidColorBrush(Colors.Black))
                .Select(x => (Brush)x)
                .ToReadOnlyReactiveProperty();

            this.HasErrors = Observable.CombineLatest(
                this.Title.ObserveHasErrors,
                this.Completed.ObserveHasErrors)
                .Select(x => x.Any(y => y))
                .ToReadOnlyReactiveProperty();
        }
Пример #2
0
 public void AddTodoItem(TodoItem todoItem)
 {
     this.AllTodoItems.Add(todoItem);
 }