如何将依赖项注入自定义控件

时间:2009-09-30 09:09:04

标签: c# dependency-injection

我正在使用依赖注入将接口注入到我的几个视图中。我需要将接口注入自定义控件的要求之一。我已经尝试使用ServiceDependency属性来注入接口,但它不起作用。

public interface ISearchService
{
    void CustomizeLayout(ColumnCollection collection);
}
IService _service;

[ServiceDependency]
public IService Service
{
    get
    {
        return _service;
    }
    set
    {
        _service = value;
    }
}

然后我在我的自定义控件中调用Service.CustomizeLayout(this.Columns)。它抛出Object ref未设置为对象的实例(Service作为null)。

有人可以告诉我wat可能是问题,或者如何将依赖注入控件,类似于我们为win表单执行的操作。

1 个答案:

答案 0 :(得分:0)

我用过CAB已经有一段时间了,如果我弄错了,请原谅我。您的问题可能是自定义控件不是由CAB创建的,并且CAB在创建包含控件的视图时不知道控件具有依赖关系。我记得也遇到过这个问题,但不记得确切的解决方案: - (