private void buttonSelectFiles_Click(object sender, EventArgs e)
        {
            if (openFileDialogAssetFiles.ShowDialog() == DialogResult.OK)
            {
                var listpb = AssetInfo.ReturnFilenamesWithProblem(openFileDialogAssetFiles.FileNames.ToList());
                if (listpb.Count > 0)
                {
                    MessageBox.Show(AssetInfo.FileNameProblemMessage(listpb), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                foreach (var file in openFileDialogAssetFiles.FileNames)
                {
                    assetFiles.Add(new BulkAssetFile()
                    {
                        AssetName = Path.GetFileName(file), FileName = file
                    });
                }
                if (string.IsNullOrWhiteSpace(textBoxFolderPath.Text))
                {
                    FileInfo file = new FileInfo(assetFiles[0].FileName);
                    textBoxFolderPath.Text = Path.Combine(file.Directory.Parent.FullName, file.Directory.Name + "_Encrypted");
                }
            }
            ReindexAssetListAndDoSomeChecks();
        }
        private void buttonSelectFolder_Click(object sender, EventArgs e)
        {
            CommonOpenFileDialog openFolderDialog = new CommonOpenFileDialog()
            {
                IsFolderPicker = true
            };

            if (openFolderDialog.ShowDialog() == CommonFileDialogResult.Ok)
            {
                if (string.IsNullOrWhiteSpace(textBoxFolderPath.Text))
                {
                    textBoxFolderPath.Text = openFolderDialog.FileName + @"_Encrypted";
                }

                var folders = Directory.GetDirectories(openFolderDialog.FileName).ToList();
                var files   = Directory.GetFiles(openFolderDialog.FileName).ToList();

                if (files.Count > 0)
                {
                    var listpb = AssetInfo.ReturnFilenamesWithProblem(files);
                    if (listpb.Count > 0)
                    {
                        MessageBox.Show(AssetInfo.FileNameProblemMessage(listpb), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        Guid g = Guid.NewGuid();
                        foreach (var file in files)
                        {
                            assetFiles.Add(new BulkAssetFile()
                            {
                                AssetGuid = g, AssetName = Path.GetFileName(openFolderDialog.FileName), FileName = file
                            });
                        }
                    }
                }

                folders.RemoveAll(f => Directory.GetFiles(f).Count() == 0); // we remove all folder with 0 file in it at the root

                foreach (var folder in folders)
                {
                    var filesinfolder = Directory.GetFiles(folder).ToList();

                    if (filesinfolder.Count > 0)
                    {
                        var listpb = AssetInfo.ReturnFilenamesWithProblem(filesinfolder);
                        if (listpb.Count > 0)
                        {
                            MessageBox.Show(AssetInfo.FileNameProblemMessage(listpb), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        else
                        {
                            Guid   g             = Guid.NewGuid();
                            string thisassetname = Path.GetFileNameWithoutExtension(filesinfolder[0]);
                            foreach (var file in filesinfolder)
                            {
                                assetFiles.Add(new BulkAssetFile()
                                {
                                    AssetGuid = g, AssetName = Path.GetFileName(folder), FileName = file
                                });
                            }
                        }
                    }
                }
                ReindexAssetListAndDoSomeChecks();
            }
        }