Exemplo n.º 1
0
        /// <summary>
        /// ファイル除外ボタン押下時
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnClickRemove(object sender, RoutedEventArgs e)
        {
            var selectedList = new FileProperty[FileListBox.SelectedItems.Count];

            FileListBox.SelectedItems.CopyTo(selectedList, 0);

            context.RemoveFiles(selectedList);
            context.RefreshUndoButton();
        }
Exemplo n.º 2
0
        /// <summary>
        /// リネーム開始
        /// </summary>
        public void StartRename(FileProperty[] fileList)
        {
            bool isFailed   = false;
            bool isFileLost = false;

            for (int i = 0; i < fileList.Length; ++i)
            {
                var fileProp = fileList[i];
                if (fileProp == null)
                {
                    continue;
                }

                // ファイルの有無確認
                if (!File.Exists(fileProp.Path))
                {
                    // 存在しない場合はリストから除外する
                    context.RemoveFile(fileProp);
                    isFileLost = true;
                    continue;
                }

                var result = Rename(fileList[i], i);
                if (result == RenameResult.Failed)
                {
                    isFailed = true;
                    break;
                }
                else if (result == RenameResult.EmptyName)
                {
                }
            }

            context.RefreshList();
            context.RefreshUndoButton();

            if (isFailed)
            {
                return;
            }

            //完了のダイアログ表示
            if (isFileLost == false)
            {
                MessageBox.Show("リネームが完了しました", "確認", MessageBoxButton.OK);
            }
            else
            {
                MessageBox.Show("リネームが完了しました\n一部のファイルが移動または削除されていたため\nリストから除外しました", "確認", MessageBoxButton.OK, MessageBoxImage.Exclamation);
            }
        }