C# 在设计时如何解析程序集?

C# 在设计时如何解析程序集?,c#,design-time,C#,Design Time,我有一个扩展性库(或一个库的开头),带有一个UITypeEditor。我现在想用编辑颂词来装饰这幢房子。我不想引用扩展性库,因为它不需要部署,所以我使用以下方法: [Editor("MyProject.Extensibility.MyUIEditor, MyProject.Extensibility, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", typeof (UITypeEditor))] MySpecialType Spec

我有一个扩展性库(或一个库的开头),带有一个UITypeEditor。我现在想用编辑颂词来装饰这幢房子。我不想引用扩展性库,因为它不需要部署,所以我使用以下方法:

[Editor("MyProject.Extensibility.MyUIEditor, MyProject.Extensibility, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", typeof (UITypeEditor))]
MySpecialType SpecialType { get; set; }
这不管用。类型编辑器用于枚举,当我使用它时,会显示标准枚举下拉列表。但是,如果将类型编辑器复制到项目中并使用直接类型引用,则所有操作都可以正常工作。我已经尝试使用Activator.CreateInstance测试我的字符串,我已经成功了。MyProject.Extensibility.dll被复制到几乎每个地方(项目的所有bin/debug文件夹)。是否有一些特殊的地方放置扩展性dll以便.net可以解析程序集


谢谢

只需输入Regedit.exe并创建一个键,如下所示:

HKLM\SOFTWARE\Microsoft\.NETFramework\v2.0.50727\AssemblyFoldersEx\StackOverflow 在使用者程序集(Windows窗体可执行程序集)上,我创建了一个从按钮派生的组件,如下所示:

public class MyButton : Button
{
    [Editor("AssemblyReferenceCL.MyEditor, AssemblyReferenceCL", typeof(UITypeEditor))]
    public String MyProp { get; set; }
}

两个程序集之间没有引用。一切正常。

谢谢!MessageBox.Show在我的尝试中不起作用,一直获取空引用异常。但是,在另一个项目中,我确实使用了一个模式编辑器,没有使用注册表设置的引用。再次感谢!
public class MyButton : Button
{
    [Editor("AssemblyReferenceCL.MyEditor, AssemblyReferenceCL", typeof(UITypeEditor))]
    public String MyProp { get; set; }
}