public void Load()
        {
            Queue <BkDir> queue = new Queue <BkDir>();

            queue.Enqueue(this);
            while (queue.Count > 0)
            {
                BkDir dir = queue.Dequeue();
                if (dir == null || dir.Info == null)
                {
                    continue;
                }

                var subDirs = dir.Info.GetDirectories();
                foreach (DirectoryInfo dirInfo in subDirs)
                {
                    BkDir tempDir = new BkDir(dirInfo);
                    dir.BkDirs.Add(tempDir);
                    queue.Enqueue(tempDir);
                }

                var subFiles = dir.Info.GetFiles();
                foreach (FileInfo fileInfo in subFiles)
                {
                    BkFile tempFile = new BkFile(fileInfo);
                    dir.BkFiles.Add(tempFile);
                }
            }
        }
        private void buttonBackup_Click(object sender, EventArgs e)
        {
            BkDir dir = new BkDir(textBoxBackupPath.Text);

            dir.Load();
        }