使用用于“;路径“;属性
本文关键字:属性 路径 用于 | 更新日期: 2023-09-27 18:29:04
我正在用C#
和VS2010
制作一个简单的winforms应用程序。我的winforms设计包含一个FileSystemWatcher
,它在创建文件时激发一堆代码。
我的问题是,FileSystemWatcher
的路径需要在程序运行之前定义,因为它并不总是相同的。
我有一个名为startPath的字符串,我想使用它,但在我的设计中,我似乎不能将它添加到FileSystemWatcher
属性中的"路径"字段中。
如果我编辑了form1.designer.cs
,我就能让它工作,但我很快就了解到,即使编辑了表单的不同组件,也会重新生成此代码!
正如你可能已经猜到的,我仍然在学习C#.net
(大约一周后),而且毫无经验!如果我遗漏了什么愚蠢的东西,请指出!
FileSystemWatcher有一个path属性,可用于在初始化FileSystemWatcher对象后更改路径。否则,如果使用构造函数设置要监视的路径,则必须重新设置观察程序。
FileSystemWatcher.Path属性
存储路径本身可以通过@leppie 提到的应用程序设置轻松完成
设置参考:
应用程序设置概述
使用C#中的设置
在Winform应用程序中保存用户设置
我在运行时将用户定义的字符串分配为路径,如下所示:
在我的表格中1.cs:
protected override void OnActivated(EventArgs e)
{
base.OnActivated(e);
fileSystemWatcher1.Path = inputPath;
}
我认为这是一种很好的方法(似乎有效!),字符串"inputPath"是通过从我的配置文件中获取相应的设置来定义的。如果我把它放在settings.cs.上,它似乎不想玩得很好
将所需路径添加到app.config文件的appSettings部分:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="watcherPath" value="''myPC'myShare'myFolder'" />
</appSettings>
</configuration>
然后,您可以使用代码从访问此值,并将其分配给FileWatcher路径:
string myPath = System.Configuration.ConfigurationManager.AppSettings["watcherPath"];
FileSystemWatcher fsw = new FileSystemWatcher(myPath);