可以将Caliburn.Micro用于Visual Studio 2017扩展开发吗?

时间:2018-02-21 20:57:33

标签: c# visual-studio-2017 caliburn.micro visual-studio-extensions

我一直在尝试在我为Visual Studio 2017开发的扩展中使用Caliburn.Micro。我创建了自己的自定义引导程序。我使用了此处列出的示例Customer Bootstrapper。我在初始化扩展程序的工具窗口窗口后立即启动我的引导程序。我已经尝试了一切,似乎我无法让Caliburn.Micro约定起作用。我想知道Caliburn.Micro是否可以在Visual Studio的扩展中工作!? ToolWindowPane可以托管一个WPF UserControl,所以我认为不会有问题,但我甚至无法让ShellView看到ShellViewModel。如果Caliburn.Micro可以在这种情况下工作,有人可以告诉我吗?

谢谢!

这是我的BootStrapper:

  public class ClassBootStrapper : BootstrapperBase<IShellViewModel>
{
    private CompositionContainer container;

    private static BootstrapperBase bootstrapper;


    public static void Initialise()
    {
        if (null == bootstrapper)
        {
            bootstrapper = new ClassBootStrapper();
        }
    }

    private ClassBootStrapper() 
    {
       Initialize();
    }

    protected override IEnumerable<Assembly> SelectAssemblies()
    {
        var baseAssemblies = new List<Assembly>(base.SelectAssemblies());


        var thisAssembly = Assembly.GetAssembly(typeof(ClassBootStrapper));
        if (!baseAssemblies.Contains(thisAssembly))
        {
            baseAssemblies.Add(thisAssembly);
        }
        foreach (var assembly in baseAssemblies.ToList().Where(newAssembly => AssemblySource.Instance.Contains(newAssembly)))
        {
            baseAssemblies.Remove(assembly);
        }

        return baseAssemblies;
    }
}

1 个答案:

答案 0 :(得分:-2)

我在我身边测试它,它不支持VS2017,你最好在这里发布“Q&amp; A”:

https://marketplace.visualstudio.com/items?itemName=TheWinDev.CaliburnMicroWindows10Template#overview

因此,扩展团队可以为此扩展提供更多有用的信息。