【问题标题】:Skinnable Windows Forms App: Handle different icon sets可换肤的 Windows 窗体应用程序:处理不同的图标集
【发布时间】:2012-01-23 16:14:09
【问题描述】:

开始时,我们将所有图标放在源代码管理中的一个文件夹中,并且所有 Windows 窗体项目都从它们的 .resx 文件中引用该文件夹中的图标。

既然我们决定使用不同外观的 GUI,我们又创建了两个图标集,它们都具有相同的名称,每个都放在自己的文件夹中,这样当我们想要使用不同的 GUI 时,我们只需复制并粘贴到“主”文件夹。

这种方法的问题在于源代码控制:每当我们提交时,我们必须小心不要发送我们的图标,如果我们改变了它们。这很麻烦。

如何避免这种情况,同时将所有图标置于源代码控制之下?有没有标准的方法来处理这个?

【问题讨论】:

    标签: winforms version-control icons


    【解决方案1】:

    有一个配置标志来指示使用哪组图标。然后,您只需将工作区配置为指向正确的图标集,而不是踩着对方的图标集。

    为了避免配置文件在 VC 中相互影响,让 VC 存储具有合理默认值的配置文件的 模板,然后让 实际配置文件被VC系统忽略。

    例如,我们将web.config.template 签入到 VC 系统并在其中进行任何系统范围的配置更改。每个开发人员(以及任何其他类型的部署)都将拥有自己的模板文件副本,其中包含他们特定的配置需求。

    为了帮助了解主配置文件何时更改,我们有一组钩子脚本,用于通知用户已更改并针对本地文件进行自动比较,并要求设置显式标志更改主文件时。

    【讨论】:

    • 所以,为了绕过硬编码的.resx 图标路径,我应该重新定义它们以使用将根据配置标志设置的环境变量,以指向特定的图标集,是这样你建议什么?配置标志是指app.config 中的键、环境变量还是其他?
    • 我更喜欢app.config,因为它更容易被发现,不会弄乱我的路径,而且因为它是一个文本文件,所以更“可用”,但我会使用你的任何配置目前用于保持一致。
    猜你喜欢
    • 1970-01-01
    • 2011-09-23
    • 2018-07-12
    • 2021-08-27
    • 1970-01-01
    • 1970-01-01
    • 2013-07-29
    • 1970-01-01
    • 2013-07-03
    相关资源
    最近更新 更多