在C#winforms应用程序中支持白色标签的最佳实践

在C#winforms应用程序中支持白色标签的最佳实践,c#,.net,winforms,white-labelling,C#,.net,Winforms,White Labelling,我开发了一个应用程序,帮助用户根据统计计算“更好地”玩赌场游戏 它是一个外部应用程序,可以嗅探网络,了解某些赌场房间协议(一些基于web的,一些本地应用程序),并向用户提供实时建议 最近,不同的赌场房间运营商联系了我,他们希望从我这里获得软件许可证,自定义图形/字符串/功能集,并以他们的品牌名称将其提供给他们的用户 因此,我将为N个不同的赌场安装N个不同的安装,每个赌场有不同的图形,不同的字符串,启用了不同的功能集等等 在c#winforms应用程序中处理此类需求的最佳实践是什么?我应该为每个供

我开发了一个应用程序,帮助用户根据统计计算“更好地”玩赌场游戏

它是一个外部应用程序,可以嗅探网络,了解某些赌场房间协议(一些基于web的,一些本地应用程序),并向用户提供实时建议

最近,不同的赌场房间运营商联系了我,他们希望从我这里获得软件许可证,自定义图形/字符串/功能集,并以他们的品牌名称将其提供给他们的用户

因此,我将为N个不同的赌场安装N个不同的安装,每个赌场有不同的图形,不同的字符串,启用了不同的功能集等等

在c#winforms应用程序中处理此类需求的最佳实践是什么?我应该为每个供应商提供不同的资源文件吗?是否有内置的.net framework来处理此类场景?是否有第三方软件可以帮助我管理此问题


请尽可能详细,并提前感谢

如果这是一个asp.net应用程序,我建议使用主题。它们在表单应用程序中没有得到很好的支持,但是WPF中有很好的主题支持。检查一下

这应该很简单,因为winforms是相当“战舰灰色”的,所以一旦你剥掉所有装饰,它将非常简单,并准备重新开始构建

基本上:

  • 删除代码/表格中对产品名称/公司/客户的所有引用
  • 开始以图像和文本等形式添加特定的“品牌”项目
  • 具体而言:

    • 确保代码在名称空间等中未引用产品名称/公司/客户
    • 从资源文件加载所有字符串(这将有助于本地化)
    • 如果您想要一些“明显的品牌”,那么就从磁盘或资源中加载一个图像文件,并显示在一个picturebox中

    然后,您可以使用构建工具多次构建相同的代码,每次都使用不同的资源配置构建。

    好吧,它不是asp.net,所以它没有关联。我如何测试不同的“barndings”?我应该覆盖资源文件吗?有更简单的方法吗?是的,拥有品牌资源文件是一种方法,尽管您可以通过在配置中指定公司/客户名称等来实现,如果您愿意,您可以在编译步骤后在构建中应用这些名称。