这些都不适合我,尽管这一切似乎都是好的建议。我最终做的是世界上最大、最糟糕的黑客攻击。我希望完成的只是从 SQLite 数据库加载数据库表并将其呈现在 DataGridView 中(只读,带有可排序的列)。实际的数据库将在运行时以编程方式指定。我通过向表单添加 DataGridView 来定义 DataSet,并使用向导静态定义 DB 连接字符串。然后我进入 Settings.Designer.cs 文件并set
为 DB Connection 字符串属性添加了一个访问器:
namespace FormatDetector.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "9.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)]
[global::System.Configuration.DefaultSettingValueAttribute("data source=E:\\workspace\\Test\\Matches.db;useutf16encoding=True")]
public string MatchesConnectionString {
get {
return ((string)(this["MatchesConnectionString"]));
}
set
{
(this["MatchesConnectionString"]) = value;
}
}
}
}
这是一个 klugey hack,但它有效。关于如何清理这个烂摊子的建议非常受欢迎。
布莱恩