Можете ли вы помочь мне с текстом и копией - PullRequest
0 голосов
/ 26 февраля 2020

Здравствуйте, я хотел бы иметь возможность изменять текст моего текстового поля txtFiles на каждой итерации файлов, когда имеется несколько файлов.

А также иметь возможность копировать только один файл за раз, когда я хочу это даже если в каталоге несколько файлов.

Я объявил событие textaged. Я объявил функцию txtFiles_TextChanged, но я не знаю, что добавить в нее, чтобы текст текстового поля txtFiles изменялся при каждой итерации файлов.

Я объявил txtFiles.Text = ConvertToString (files [i] ); изменить текст в текстовом поле.

Я также хотел бы иметь возможность копировать только один файл за раз, но он стирает все текстовые файлы.

Как вы решаете эту проблему?

string sourceDir = 
@"C:\Users\PORTABLEHP\Documents";
string destDir = 
@"C:\Users\PORTABLEHP\Documents\
xgen";
public évent EventHandler 
textchanged;


private void btnCopy(object 
sender,EventArgs e)
{
try
{
string [] txtList = Directory.
GetFiles(sourceDir,"*.txt");


foreach(string f in txtList)
{
try
{
string fName = f.Substring
(sourceDir.Length + 1);

string [] files = new string 
[sourceDir.Length];

progressBar1.Value = 1;
progressBar1.Minimum = 0;
progressBar1.Maximum = 
files.Length;

for(int i = 1;i < files.Length; 
i++)
{
progressBar1.PerformStep();
//To have the text change from the 
textbox
txtFiles.Text = ConvertToString
(files[i]);

File.Copy(Path.Combine
(sourceDir,fName), Path.Combine
(destDir,fName), true);
}
}
catch(IOException copyerror)
{
MessageBox.Show(copyerror.Message);
}
}
}
catch (DirectoryNotFoundException 
dirnotfound)
{
MessageBox.Show
(dirnotfound.Message);

private void txtFiles_TextChanged
(object sender,EventArgs e)
{ 
// I don't know ?
}

1 Ответ

0 голосов
/ 26 февраля 2020

Так что, если я вас правильно понял, вам нужно немного изменить код

Изменить

txtFiles.Text = ConvertToString(files[i]);

На

txtFiles.Text = $"{ Path.GetFileName(f)} was copied";    //f was declared as string in your first loop that contains the file path
...