aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels/CatsViewVM.cs
blob: e8d0bda10b9feb85ac83975c490931871a2890e3 (plain)
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
39
40
41
42
using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.Core.Commands;
using Tango.BL.Entities;
using Tango.MachineStudio.Common.Notifications;

namespace Tango.MachineStudio.DB.ViewModels
{
    public class CatsViewVM : DbTableViewModel<Cat>
    {
        public CatsViewVM(INotificationProvider notification) : base(notification)
        {
            SelectDataFileCommand = new RelayCommand(SelectDataFile);
            
        }

        public RelayCommand SelectDataFileCommand { get; set; }

        private void SelectDataFile()
        {
            OpenFileDialog dlg = new OpenFileDialog();
            dlg.Filter = "Color Adjustment Files|*.CAT";
            dlg.Title = "Select Color Adjustment File";
            if (dlg.ShowDialog().Value)
            {
                try
                {
                    EditEntity.Data = File.ReadAllBytes(dlg.FileName);
                }
                catch (Exception ex)
                {
                    _notification.ShowError(ex.Message);
                }
            }
        }
    }
}
class="k">void SourceCollectionAChanged(object sender, NotifyCollectionChangedEventArgs e) { SourceCollectionChanged(0, e); } void SourceCollectionBChanged(object sender, NotifyCollectionChangedEventArgs e) { SourceCollectionChanged(a.Count, e); } void SourceCollectionChanged(int collectionStart, NotifyCollectionChangedEventArgs e) { switch(e.Action) { case NotifyCollectionChangedAction.Add: for (int i = 0; i < e.NewItems.Count; i++) { this.InsertItem(collectionStart + e.NewStartingIndex + i, (T)e.NewItems[i]); } break; case NotifyCollectionChangedAction.Remove: for (int i = 0; i < e.OldItems.Count; i++) { this.RemoveAt(collectionStart + e.OldStartingIndex); } break; case NotifyCollectionChangedAction.Reset: Reset(); break; default: throw new NotSupportedException(e.Action.ToString()); } } } }