Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.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# 以c Windows窗体显示MS Office颜色对话框_C#_.net_Colors_Ms Word_Colordialog - Fatal编程技术网

C# 以c Windows窗体显示MS Office颜色对话框

C# 以c Windows窗体显示MS Office颜色对话框,c#,.net,colors,ms-word,colordialog,C#,.net,Colors,Ms Word,Colordialog,我有一个windows窗体,它是用c编写的Word addin的一部分 当按下表单上的按钮时,我希望显示当您单击Word ribbon的“常用”选项卡上的“字体颜色”按钮时出现的“颜色”对话框。我想显示这个确切的对话框,但我很难做到这一点 我知道我可以使用ColorDialog clrDialog=新建ColorDialog;但这并不令人满意,因为它显示的一组颜色与Word颜色对话框中使用的颜色完全不同 如果无法显示实际的“Word颜色”对话框,是否可以提取该对话框中显示的颜色列表,以便将它们放

我有一个windows窗体,它是用c编写的Word addin的一部分

当按下表单上的按钮时,我希望显示当您单击Word ribbon的“常用”选项卡上的“字体颜色”按钮时出现的“颜色”对话框。我想显示这个确切的对话框,但我很难做到这一点

我知道我可以使用ColorDialog clrDialog=新建ColorDialog;但这并不令人满意,因为它显示的一组颜色与Word颜色对话框中使用的颜色完全不同

如果无法显示实际的“Word颜色”对话框,是否可以提取该对话框中显示的颜色列表,以便将它们放入c ColorDialog?我不需要硬代码解决方案,我希望以编程方式访问颜色集合,因为颜色因Word版本而异

我对解决这个问题的第三方组件不感兴趣


提前谢谢

查看Microsoft.Office.Interop.Word中的WdColor枚举。我不认为有任何方法可以显示那个确切的对话框它不是一个对话框,它是一种特殊类型的功能区库。无法访问功能区控件的内部,也无法在不使用SendKeys的情况下强制它们显示。除了上面提到的wdColor枚举之外,您还需要提取主题颜色Accent1等,这不是一项简单的任务,尤其是当文档使用默认主题时。