Я работаю над системой, в которой мой form1
использует событие перетаскивания и form2
, которое отображает информацию о поданной падеже в form1
. В form2
есть Button
ok и отмените. Хорошо, если отображаемая информация верна, она будет продолжать копировать информацию и делать ее как папку и кнопку Отмена, если она неверна.Вызов другой функции из другой функции C#
вот как это идет:
Капля Файл ---> (Form1) Перетащите события ----> (Form2) Отображение информации: (имя файла, номер WorkOrder, пропускной способности и т.д.)
public void BagsakanBin_DragDrop(object sender, DragEventArgs e)
{
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
foreach (string file in files)
{
WOFilenameERROHANDLER();
Filename = Path.GetFullPath(file);
//function para papuntahin si file kay Patching folder
if(Filename.ToLower().Contains("pat_"))
{
if (!Path.HasExtension(file))
{
MessageBox.Show("Patching Diagram Issued!");
DirectoryInfo dir = new DirectoryInfo(Filename);
FileInfo[] FolderFile = dir.GetFiles(); //Getting Text files
if (!dir.Exists)
{
throw new DirectoryNotFoundException(
"Source directory does not exist or could not be found: "
+ Filename);
}
DirectoryInfo[] dirs = dir.GetDirectories();
// If the destination directory doesn't exist, create it.
if (!Directory.Exists(PATdestFile + "\\" + Path.GetFileName(file)))
{
Directory.CreateDirectory(PATdestFile + "\\" + Path.GetFileName(file));
}
foreach (FileInfo filename in FolderFile)
{
if (filename.Name.Contains(".pdf") || filename.Name.Contains(".xls") || filename.Name.Contains(".vsd") || filename.Name.Contains(".docx") || filename.Name.Contains(".doc") || filename.Name.Contains(".ppt"))
{
filename.CopyTo(PATdestFile + "\\" + Path.GetFileName(file) + "\\" + filename.Name, true);
}
else
{
MessageBox.Show(" Cannot copy file " + filename.Name + "\n Only .pdf,.xls,vsd,.docx,.doc,.ppt\n Are acceptable file extensions", "WARNING!");
}
}
}
else
{
Directory.CreateDirectory(PATdestFile + "\\" + Path.GetFileNameWithoutExtension(file));
if (Path.GetFileName(file).Contains(".pdf") || Path.GetFileName(file).Contains(".xls") || Path.GetFileName(file).Contains(".vsd") || Path.GetFileName(file).Contains(".docx") || Path.GetFileName(file).Contains(".doc") || Path.GetFileName(file).Contains(".ppt"))
{
File.Copy(Path.GetFullPath(file), PATdestFile + "\\" + Path.GetFileNameWithoutExtension(file) +"\\" + Path.GetFileName(file), true);
}
else
{
MessageBox.Show(" Cannot copy file " + Path.GetFileName(file) + "\n Only .pdf,.xls,vsd,.docx,.doc,.ppt\n Are acceptable file extensions", "WARNING!");
}
}
PATFileNameSeparator();
PATupdate();
}
}
}
, как вы можете видеть, копирование и изготовление папки находится в draganddrop
случае как я называю form2
для отображения информации и при нажатии на кнопку ОК будет приступить к копированию файла.
public void DisplayInfo(string WOfilename)
{
WOdisp.Text = WOfilename;
}
это где я звонить по
public void WOFilenameERROHANDLER()
{
IssuedDisp.DisplayInfo(Path.GetFileName(WOfilename.ToString()));
}
вопрос, как я называю кнопку ОК на draganddrop
функции
Я не совсем понимаю: «как я называю кнопку ОК на функцию DragAndDrop» Вы хотите, чтобы нажать OK автоматически в коде? –
после того, как я перетащил файл в своем приложении в form1. форма 2 отображает информацию, а в форме2 - кнопка ok. если я нажму, чтобы форма 2 закрылась, а form1 перейдет к копированию файла. Я не знаю, что делать.должен ли я создать bool и создать условие в функции перетаскивания, например if (okbutton == 1), а затем перейти к копированию. –