【问题标题】:Is there something like an "Options" library for .NET?.NET 是否有类似“选项”库的东西?
【发布时间】:2011-01-21 04:03:43
【问题描述】:

我正在开发一个插件系统。一些插件需要用户输入。我希望他们能够向主应用程序报告他们需要什么输入,并让主应用程序决定如何获取它。似乎可能有某种设计用于指定此类选项的库。因此,插件可以返回某种选项对象,指定名称和选项类型,主应用程序可以使用这些选项来确定显示哪种控件以获得所需的选项。

我不知道这样的东西是否存在,但考虑到似乎有很多应用程序使用这样的选项,这似乎有点可能。我正在考虑诸如 Firefox 的 about:config 之类的东西,它只显示大量选项并且知道如何处理每个选项。基本上,我希望能够为我的主应用程序(它不是 Web 应用程序或浏览器,这只是一个示例)创建一个 about:config 页面,它可以查看插件想要的选项并自动生成一个简单的界面(例如 about:config ) 来获得这些选项。

【问题讨论】:

  • 查看定义 API =/?我想这就是你所要求的

标签: .net configuration plugins preferences options


【解决方案1】:

如果是 WinForms 应用,请查看 PropertyGrid 控件。您创建一个类对象,其中包含您希望用户配置的所有选项的属性。然后使用此对象设置 PropertyGrid 的“SelectedObject”属性。然后该控件将创建一个窗口,让您的用户在运行时修改选项对象的值。

【讨论】:

  • 太棒了。我仍然希望听到更多答案,但我不知道 PropertyGrid,这肯定会起作用。
【解决方案2】:

您对功能的要求非常特殊。通常框架(或某些特殊库)不知道应用程序的设计和要求,也不知道何时是向用户询问某事的合适时机。此外,通常插件是按需加载的,而不是在应用程序启动时加载,因此在此处由框架/库触发任何 UI 逻辑可能是非常不合适的。

所以,基本上看起来你需要自己编写库。

【讨论】:

  • 我不认为这很不寻常。许多、许多、许多带有插件框架的应用程序还提供了一个标准的 UI,插件利用它来配置自己。
猜你喜欢
  • 1970-01-01
  • 2011-05-01
  • 1970-01-01
  • 2013-01-13
  • 2018-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多