c# - 在 C# 中使用 Word Interop 中的 TCSCConverter

标签 c# ms-word

我正在尝试制作一个将所选文本转换为繁体中文的按钮,使用

private void totradbutton_Click(object sender, RibbonControlEventArgs e)
{
    Word.Range currentRange = Globals.ThisAddIn.Application.Selection.Range;
currentRange.TCSCConverter(Word.WdTCSCConverterDirection.wdTCSCConverterDirectionSCTC,true,true); 
}

但是当按钮在某些选定的文本上运行时,文本不会更改为繁体中文。我已经在简化版、传统版和混合版上尝试过,但仍然没有任何反应。我放了一个消息框来检查代码是否运行,确实如此。 TCSCConverter 的返回类型为void,因此它不会返回转换后的形式。

手册页 http://msdn.microsoft.com/en-us/library/microsoft.office.interop.word.range.tcscconverter.aspx似乎并没有太大启发。

currentRange.text 似乎没有任何变化

请有人向我解释我的错误。

最佳答案

虽然我无法确定它为什么不起作用,但解决方法是使用 Microsoft.VisualBasic 程序集中的 strConv 函数:

currentRange.Text = Microsoft.VisualBasic.Strings.StrConv(currentRange.Text, VbStrConv.TraditionalChinese);

对于已经转换的文本或分段符,这似乎没有问题,尽管可能还有其他我没有发现的问题。

关于c# - 在 C# 中使用 Word Interop 中的 TCSCConverter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13972150/

相关文章:

c# - 这个说法有什么问题?

c# - 在 WPF/MVVM 应用程序启动时加载配置文件/处理错误

c# - 如何向 Entity Framework 中的第三个表添加额外的列?

c# - 如何捕获特定数据的版本历史记录并突出显示从当前版本到先前版本的更改

c# - 如何从 MS Word 中的行号获取文本

ms-word - 计算两个日期之间的天数(以ms word为单位)

c# - 将 "reference"传递给字典元素?

c# - FTP 在 C# 中传输期间更改 PGP 文件

vba - 将 3 个值中的 1 个传递给 Sub

c# - 如何创建 word 文档对象的克隆?