我正在使用在IoC容器中注册的多个服务。有一个接口IFormService,可以从我的主应用程序中访问表单。接口由
定义public interface IFormService
{
System.Windows.Forms.Form Form { get; }
}
并且例如由返回主表单实例的类MainFormService实现。
container.Register(
Component.For<IFormService>()
.ImplementedBy<MainFormService>()
.Named("Application.Forms.MainForm")
);
在应用程序初始化之后,我正在使用此服务来检索表单并让应用程序运行:
Form mainForm = this.ServiceContainer
.Resolve<IFormService>("Application.Forms.MainForm")
.Form;
Application.Run(mainForm);
这完美无缺。唯一的问题是表单上的控件看起来像95-ish:
后来在我的开发中,我想切换到使用DevExpress皮肤,这似乎产生了同样的问题。为什么会发生这种情况?如何正确解决这个问题?
提前致谢。