Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过插件向项目添加多个文件时,如何防止UI自我更新?_C#_.net_Visual Studio_Plugins_Envdte - Fatal编程技术网

C# 通过插件向项目添加多个文件时,如何防止UI自我更新?

C# 通过插件向项目添加多个文件时,如何防止UI自我更新?,c#,.net,visual-studio,plugins,envdte,C#,.net,Visual Studio,Plugins,Envdte,我正在尝试从VSPackage插件中创建多个文件。代码运行时,每次创建新文件时,环境都会尝试将其加载到默认设计器中。这大大降低了插件的执行速度(而且是不必要的) 我尝试将DTE.suppressuui属性设置为true,但没有任何效果 public void Generate() { _dte.SuppressUI = true; try { _innerGenerator.Generate(); } finally {

我正在尝试从VSPackage插件中创建多个文件。代码运行时,每次创建新文件时,环境都会尝试将其加载到默认设计器中。这大大降低了插件的执行速度(而且是不必要的)

我尝试将
DTE.suppressuui
属性设置为
true
,但没有任何效果

public void Generate()
{
    _dte.SuppressUI = true;

    try
    {
        _innerGenerator.Generate();
    }
    finally
    {
        _dte.SuppressUI = false;
    }
}

我还应该做些什么来防止UI自我刷新?

你只是将这些文件添加到解决方案中,还是试图打开它们?@VladFeinstein我真希望有办法阻止它们打开,但这似乎取决于代码运行的项目类型。在C#项目中,它工作正常,但在DB项目中,默认情况下,添加到项目中的每个新文件都会自动打开。不管是哪种方式,我都想阻止UI刷新自己,无论是在讨论文档还是解决方案资源管理器。你只是在将这些文件添加到解决方案中,还是试图打开它们?@VladFeinstein我真希望我有办法阻止它们打开,但这似乎取决于代码运行的项目类型。在C#项目中,它工作正常,但在DB项目中,默认情况下,添加到项目中的每个新文件都会自动打开。无论是哪种方式,我都希望防止UI刷新自身,无论是在讨论文档还是解决方案资源管理器。