2.9更新用户界面

本文介绍如何在Visual Studio环境中高效更新用户界面(UI)。探讨了在Win32应用程序中使用UpdateCommandUI方法的不同策略,以及如何避免性能下降。还讨论了在不同上下文中使用此方法的最佳实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

更新用户界面

Visual Studio 2015
 

若要了解有关 Visual Studio 2017 RC 的最新文档,请参阅 Visual Studio 2017 RC 文档

实现命令后,您可以添加代码以使用新命令的状态更新用户界面。

在典型的 Win32 应用程序,可以连续轮询命令集,可以按用户查看这些调整各个命令的状态。 但是,由于Visual Studio外壳程序可以承载无限的数量的 Vspackage,广泛轮询可能会降低响应性,尤其在托管的代码和 COM 之间的互操作程序集之间轮询

若要更新 UI

  1. 执行以下步骤之一:

    • 调用UpdateCommandUI方法。

      IVsUIShell界面可从SVsUIShell服务,但,如下所示。

      C#
      void UpdateUI(Microsoft.VisualStudio.Shell.ServiceProvider sp)  
      {  
          IVsUIShell vsShell = (IVsUIShell)sp.GetService(typeof(IVsUIShell));  
          if (vsShell != null)  
          {  
              int hr = vsShell.UpdateCommandUI(0);  
              Microsoft.VisualStudio.ErrorHandler.ThrowOnFailure(hr);  
          }  
      }  
      
      
      

      如果参数的UpdateCommandUI为非零 (TRUE),然后以同步方式和立即执行更新。 我们建议您传递零 (FALSE) 为此参数,以帮助保持良好的性能。 如果你想要避免缓存,应用DontCache标志时在.vsct 文件中创建的命令。 不过,请谨慎使用此标志或性能可能会降低。 有关命令标志的详细信息,请参阅命令标志元素文档。

    • 在承载在窗口中使用称为就地激活模型的 ActiveX 控件的 Vspackage,它可能更方便地使用UpdateUI方法。 UpdateCommandUI中的方法IVsUIShell接口和UpdateUI中的方法IOleInPlaceComponentUIManager接口在功能上等效。 同时会导致该环境以重新查询所有命令的状态。 通常情况下,不立即执行更新。 相反,更新推迟到空闲时间。 命令行界面缓存命令状态来帮助保持良好的性能。 如果你想要避免缓存,应用DontCache标志时在.vsct 文件中创建的命令。 不过,该标志谨慎使用因为性能可能会降低。

      请注意,您可以获得IOleInPlaceComponentUIManager接口通过调用QueryInterface方法IOleComponentUIManager对象,或通过获取从接口SOleComponentUIManager服务。

内容概要:《中文大模型基准测评2025年上半年报告》由SuperCLUE团队发布,详细评估了2025年上半年中文大模型的发展状况。报告涵盖了大模型的关键进展、国内外大模型全景图及差距、专项测评基准介绍等。通过SuperCLUE基准,对45个国内外代表性大模型进行了六大任务(数学推理、科学推理、代码生成、智能体Agent、精确指令遵循、幻觉控制)的综合测评。结果显示,海外模型如o3、o4-mini(high)在推理任务上表现突出,而国内模型如Doubao-Seed-1.6-thinking-250715在智能体Agent和幻觉控制任务上表现出色。此外,报告还分析了模型性价比、效能区间分布,并对代表性模型如Doubao-Seed-1.6-thinking-250715、DeepSeek-R1-0528、GLM-4.5等进行了详细介绍。整体来看,国内大模型在特定任务上已接近国际顶尖水平,但在综合推理能力上仍有提升空间。 适用人群:对大模型技术感兴趣的科研人员、工程师、产品经理及投资者。 使用场景及目标:①了解2025年上半年中文大模型的发展现状与趋势;②评估国内外大模型在不同任务上的表现差异;③为技术选型和性能优化提供参考依据。 其他说明:报告提供了详细的测评方法、评分标准及结果分析,确保评估的科学性和公正性。此外,SuperCLUE团队还发布了多个专项测评基准,涵盖多模态、文本、推理等多个领域,为业界提供全面的测评服务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值