我在项目的设置文件中为我的代码编辑器设置了配色方案.我有几个类似的设置文件,每个文件包含不同的配色方案.
要在运行时选择这些设置,我需要它们来实现ColorScheme接口.
到目前为止,代码工作得很好,只有一个主要的烦恼:每次更改设置时,界面部分都会从Designer文件中删除,因此代码不再找到它们.
有没有办法强制代码生成器将我的接口添加到生成的类?或者这是其他解决方法吗?我试图使设计器文件只读,但后来我看到很多烦人的VS对话框.
没有界面,我无法在任何东西上投射设置类.我可以通过Reflection读取它的属性,但这种方法看起来像一个丑陋的黑客.
您可以使用部分类为您的设置寻找"扩展",包括接口:)(它应该与您的设置文件位于相同的命名空间/程序集中).对设置的任何更改都不会干扰您自己创建的分部类
public interface IHaveInterface { void Hallo(); } internal partial class Settings : IHaveInterface { public void Hallo() { Console.WriteLine("Hallo"); } }
之后我可以访问Properties.Settings.Default中的hallo
Properties.Settings.Default.Hallo();