Castle.Windsor:IoC分辨率的SWF控件没有蒙皮外观

时间:2014-03-26 10:48:37

标签: c# winforms inversion-of-control look-and-feel castle

我正在使用在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:

95-ish-looking Windows Form

后来在我的开发中,我想切换到使用DevExpress皮肤,这似乎产生了同样的问题。为什么会发生这种情况?如何正确解决这个问题?

提前致谢。

0 个答案:

没有答案