草庐IT

DesignInstance

全部标签

c# - d :DesignInstance with an interface type

我将一个UI绑定(bind)到一个界面(由多个演示者实现,无法从UI程序集访问)。我真的很喜欢设计器中的d:DesignInstance,因为它(有点)使xaml使用R#成为强类型。遗憾的是,d:DesignInstance不支持接口(interface)类型:“无法创建接口(interface)的实例。”我首先想到的是:好的,没问题,让我们创建一个自定义标记扩展,它以System.Type作为参数,并且ProvideValue方法返回它的一个假实例(这个接口(interface)的虚拟实现,由动态生成IL发射)。这工作得很好,绑定(bind)在设计时解决(我可以在设计面板中看到,因为