Пример #1
0
        private void Open(D2pDirectory directory)
        {
            m_rows.Clear();
            var rows = new List <D2PGridRow>();

            if (directory == null)
            {
                rows.AddRange(m_file.RootDirectories.Select(rootDirectory => new D2PFolderRow(rootDirectory)));
                rows.AddRange(
                    m_file.Entries.Where(entry => entry.Directory == null).Select(entry => new D2PFileRow(entry)));
            }
            else
            {
                rows.Add(new D2PLastFolderRow(directory.Parent));
                rows.AddRange(directory.Directories.Select(subFolder => new D2PFolderRow(subFolder.Value)));
                rows.AddRange(directory.Entries.Select(entry => new D2PFileRow(entry)));
            }

            CurrentFolder  = directory;
            m_readOnylRows =
                new ReadOnlyObservableCollection <D2PGridRow>(m_rows = new ObservableCollection <D2PGridRow>(rows));
            OnPropertyChanged("Rows");
        }
Пример #2
0
 public D2PLastFolderRow(D2pDirectory folder)
     : base(folder)
 {
 }
Пример #3
0
 public D2PFolderRow(D2pDirectory folder)
 {
     m_folder = folder;
 }