C# C将从用户输入框到字符串的路径传递给

C# C将从用户输入框到字符串的路径传递给,c#,visual-studio,C#,Visual Studio,我是C语言编程的新手,遇到了一些我无法解决的小问题。我正在创建一个小应用程序,它将有3个输入框,如下面的屏幕截图所示。当用户点击源按钮时,它将有选择源文件夹的自由。一旦他选择OK,文件夹旁边的文本框将填充路径。所以我让那个部分工作。 现在的问题是,我已经没有足够的能力去弄清楚为什么这个框中的路径没有传递到代码中的字符串。例如,如果我键入列表的位置并放入字符串Item_List,代码就可以正常工作。如果我想对字符串源和目标执行相同的操作,那么该应用程序工作得非常好。但是,当我试图让用户通过简单地选

我是C语言编程的新手,遇到了一些我无法解决的小问题。我正在创建一个小应用程序,它将有3个输入框,如下面的屏幕截图所示。当用户点击源按钮时,它将有选择源文件夹的自由。一旦他选择OK,文件夹旁边的文本框将填充路径。所以我让那个部分工作。 现在的问题是,我已经没有足够的能力去弄清楚为什么这个框中的路径没有传递到代码中的字符串。例如,如果我键入列表的位置并放入字符串Item_List,代码就可以正常工作。如果我想对字符串源和目标执行相同的操作,那么该应用程序工作得非常好。但是,当我试图让用户通过简单地选择路径目的地来设置这些变量时,它不起作用。所以我只需要看看我错过了什么。为什么文本框C:\Files中的值没有传递给字符串Source=@。我假设我以错误的方式处理这个问题,因为\或者可能是其他原因。有什么想法吗


将源和目标文本框的值分配给表单加载事件中的两个变量

Source = tbSource.Text;
Destination = tbDestination.Text;
这些变量不包含表单加载时写入这些文本框中的文本,并且在文本框中的文本更改时不会更新

在MoveFileInList方法中使用这些值时,它们将包含加载时文本框的值,而不是当前值

to_file = Destination + "/" + curFile;
from_file = Source + "/" + curFile;
您要做的是读取文本框的当前值

to_file = Destination.Text + "/" + curFile;
from_file = Source.Text + "/" + curFile;

您是否尝试过在调试器中单步执行代码?如果您使用FolderBrowseDialog,您可以让用户不用再为键入路径名而感到乏味,也不用为自己测试拼写错误和错误路径而烦恼。是的,是的。我使用FolderBrowseDialog进行所有3个输入。当我调试应用程序时,它会说我的字符串源代码和Desrination是epty。但是我声明它们与输入文本框相等。@Slavisha如果不声明它们相等,则在窗体加载时指定文本框的值。每次FolderBrowserDialog.ShowDialog返回时,都需要重新分配该值。非常感谢您的提醒。我最后做的是:放置Source=tbSource.Text;Destination=Convert.ToStringtbDestination.Text;在私有void MoveFileInList中,现在可以像charm一样工作。您是最棒的。您是否也将字符串声明移动到了函数中?这不是严格必要的,但如果只在函数中使用它们,将它们保留在那里是一种不好的做法。是的,现在我这样做了。:-我花了整整一个晚上试图查找是否有人试图制作类似的东西,我发现一个视频,我看不到代码,但能够遵循逻辑。再次感谢您指出这个问题。请注意,Convert.ToStringtbDestination.Text不需要作为tbDestination。Text已经是string类型
to_file = Destination.Text + "/" + curFile;
from_file = Source.Text + "/" + curFile;