【问题标题】:How to change editor font from within a Visual Studio addin?如何从 Visual Studio 插件中更改编辑器字体?
【发布时间】:2012-11-25 00:52:04
【问题描述】:

我希望能够使用键盘快捷键更改 Visual Studio 2012 中的编辑器字体。由于宏已被删除,我知道这仅留下编写加载项的选项。

为了澄清,我想编写一个插件,将编辑器字体设置为单个特定字体。我不希望它弹出任何对话框,好像它那样,我还不如使用工具→选项。

我已经有一个添加 Visual Studio 命令的加载项,所以我已经知道如何做到这一点。我也知道如何为其分配键盘快捷键,所以这个问题与这两个无关。

Visual Studio 插件 API 中有哪些命令可以更改文本编辑器字体?

【问题讨论】:

  • 这些命令没有在 Visual Studio Add-on API 文档中指定?
  • @RobertHarvey:不,他们不是。此外,上述文档也很难找到。 (尝试在谷歌上搜索“Visual Studio 插件 API 文档”——没有任何相关信息。)

标签: visual-studio-2012 visual-studio-addins


【解决方案1】:

答案如下:

private void setFont(string fontFamily, int fontSize)
{
    foreach (Property prop in _applicationObject.Properties["FontsAndColors", "TextEditor"])
    {
        if (prop.Name == "FontFamily")
            prop.Value = fontFamily;
        else if (prop.Name == "FontSize")
            prop.Value = fontSize;
    }
}

_applicationObject 假定包含主机环境的 DTE2 对象。

【讨论】:

  • @RobertHarvey:耐心等待。
【解决方案2】:

+1 给蒂姆维。作为对他回答的奖励,以下内容对我更改“工具”->“选项”中的属性很有用:

_DTE2.Properties["TextEditor", "General"].Item("DetectUTF8WithoutSignature").Value = true;
_DTE2.Properties["Environment", "Documents"].Item("CheckLineEndingsOnLoad").Value = true;

【讨论】:

    猜你喜欢
    • 2014-06-11
    • 1970-01-01
    • 2021-12-23
    • 2019-11-30
    • 2021-12-17
    • 2018-05-21
    • 2023-02-02
    • 1970-01-01
    相关资源
    最近更新 更多