我有一个错误,我不能修复:
Error 1 'System.Windows.Forms.Label' does not contain a definition for 'Copy' and no extension method 'Copy' accepting a first argument of type'System.Windows.Forms.Label' could be found (are you missing a using directive or an assembly reference?) //path 156 22 FileWatcherEigen
那是我的错误.有人可以帮我,向我解释出了什么问题吗?
这是我的代码:
using System; using System.IO; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { private bool pause = false; private bool cut1 = false; private bool copy1 = false; public Form1() { InitializeComponent(); } // The lines with performed actions of a file private void fileSystemWatcher1_Created(object sender,System.IO.FileSystemEventArgs e) { if (!pause) { listBox1.Items.Add("File Created> " + e.FullPath + " -Date:" + DateTime.Now); } } private void fileSystemWatcher1_Changed(object sender,System.IO.FileSystemEventArgs e) { if (!pause) { listBox1.Items.Add("File Changed> " + e.FullPath + " -Date:" + DateTime.Now); } } private void fileSystemWatcher1_Deleted(object sender,System.IO.FileSystemEventArgs e) { if (!pause) { listBox1.Items.Add("File Deleted> " + e.FullPath + " -Date:" + DateTime.Now); } } private void fileSystemWatcher1_Renamed(object sender,System.IO.RenamedEventArgs e) { if (!pause) { listBox1.Items.Add("File Renamed> " + e.FullPath + " -Date:" + DateTime.Now); } } private void fileSystemWatcher2_Changed(object sender,System.IO.FileSystemEventArgs e) { if (!pause) { listBox1.Items.Add("File Changed> " + e.FullPath + " -Date:" + DateTime.Now); } } private void fileSystemWatcher2_Created(object sender,System.IO.FileSystemEventArgs e) { if (!pause) { listBox1.Items.Add("File Created> " + e.FullPath + " -Date:" + DateTime.Now); } } private void fileSystemWatcher2_Deleted(object sender,System.IO.FileSystemEventArgs e) { if (!pause) { listBox1.Items.Add("File Deleted> " + e.FullPath + " -Date:" + DateTime.Now); } } private void fileSystemWatcher2_Renamed(object sender,System.IO.RenamedEventArgs e) { if (!pause) { listBox1.Items.Add("File Renamed> " + e.FullPath + " -Date:" + DateTime.Now); } } //1st directory private void button2_Click(object sender,EventArgs e) { if (dlgOpenDir.ShowDialog() == DialogResult.OK) { fileSystemWatcher1.EnableRaisingEvents = false; // Stop watching fileSystemWatcher1.IncludeSubdirectories = true; fileSystemWatcher1.Path = dlgOpenDir.SelectedPath; textBox1.Text = dlgOpenDir.SelectedPath; // Text of textBox2 = Path of fileSystemWatcher2 fileSystemWatcher1.EnableRaisingEvents = true; // Begin watching } } //2nd directory private void button3_Click(object sender,EventArgs e) { if (dlgOpenDir.ShowDialog() == DialogResult.OK) { fileSystemWatcher2.EnableRaisingEvents = false; // Stop watching fileSystemWatcher2.IncludeSubdirectories = true; fileSystemWatcher2.Path = dlgOpenDir.SelectedPath; textBox2.Text = dlgOpenDir.SelectedPath; // Text of textBox2 = Path of fileSystemWatcher2 fileSystemWatcher2.EnableRaisingEvents = true; // Begin watching } } //log private void button1_Click(object sender,EventArgs e) { DialogResult resDialog = dlgSaveFile.ShowDialog(); if (resDialog.ToString() == "OK") { FileInfo fi = new FileInfo(dlgSaveFile.FileName); StreamWriter sw = fi.CreateText(); foreach (string sItem in listBox1.Items) { sw.WriteLine(sItem); } sw.Close(); } } //pause watching private void pause_button_Click(object sender,EventArgs e) { if (!pause) { pause = true; pause_button.Text = "Unpause"; } else { pause = false; pause_button.Text = "Pause Watching"; } } //clear listBox private void clear_button_Click(object sender,EventArgs e) { listBox1.Items.Clear(); } private void Transfer_Click(object sender,EventArgs e) { if (copy1) { File.Copy(FileBrowseBox.Text,Path.Combine(DestinationBox.Text,Path.ChangeExtension(FileNameBox.Text,Path.GetExtension(FileBrowseBox.Text)))); } } private void Browse_file_Click(object sender,EventArgs e) { DialogResult resDialog = openFileDialog1.ShowDialog(); if (resDialog == DialogResult.OK) { FileBrowseBox.Text = openFileDialog1.FileName; } } private void Browse_destination_Click(object sender,EventArgs e) { DialogResult resDialog = folderBrowserDialog1.ShowDialog(); if (resDialog == DialogResult.OK) { DestinationBox.Text = folderBrowserDialog1.SelectedPath; } } private void CopyButton_CheckedChanged(object sender,EventArgs e) { copy1 = true; } } }
它说这个问题在这个部分:
File.Copy(FileBrowseBox.Text,Path.GetExtension(FileBrowseBox.Text))));
我试图在这个论坛上找到它,但我找不到答案或解决方案
它与此代码一起工作:
using System; using System.IO; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { private bool cut = false; private bool copy = false; public Form1() { InitializeComponent(); } private void button1_Click(object sender,EventArgs e) { File.Copy(FileBrowseBox.Text,Path.ChangeExtension(FileBox.Text,Path.GetExtension(FileBrowseBox.Text)))); label2.Text = "File Transfer Succeeded"; } private void button2_Click(object sender,EventArgs e) { DialogResult resDialog = openFileDialog1.ShowDialog(); if (resDialog == DialogResult.OK) { FileBrowseBox.Text = openFileDialog1.FileName; label2.Text = ""; } } private void button3_Click(object sender,EventArgs e) { DialogResult resDialog = folderBrowserDialog1.ShowDialog(); if (resDialog == DialogResult.OK) { DestinationBox.Text = folderBrowserDialog1.SelectedPath; label2.Text = ""; } } private void radioButton1_CheckedChanged(object sender,EventArgs e) { copy = true; } private void radioButton2_CheckedChanged(object sender,EventArgs e) { cut = true; } } }