Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/315.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# Application.ActiveWindow.Selection.ShapeRange在未选择任何内容时引发异常_C#_Vsto_Powerpoint - Fatal编程技术网

C# Application.ActiveWindow.Selection.ShapeRange在未选择任何内容时引发异常

C# Application.ActiveWindow.Selection.ShapeRange在未选择任何内容时引发异常,c#,vsto,powerpoint,C#,Vsto,Powerpoint,我试图处理异常,但没有使用try/catch来获取选定的形状,下面的代码抛出异常=null在这里不起作用,知道吗 PowerPoint.Selection selection = Application.ActiveWindow.Selection; PowerPoint.ShapeRange shapeRange = selection?.ShapeRange; // Throw Ex if (shapeRange != null) { // do some code } 异常消息

我试图处理异常,但没有使用try/catch来获取选定的形状,下面的代码抛出异常
=null
在这里不起作用,知道吗

PowerPoint.Selection selection = Application.ActiveWindow.Selection;
PowerPoint.ShapeRange shapeRange = selection?.ShapeRange; // Throw Ex 
if (shapeRange != null)
{
    // do some code
}
异常消息:

选择(未知成员):请求无效。没有什么是合适的 当前选定


Microsoft对PowerPoint保持沉默,但对Excel则保持沉默:“返回的对象类型取决于当前选择(例如,如果选择了单元格,此属性将返回范围对象)。如果未选择任何内容,则选择属性将不返回任何内容。”

我希望PowerPoint也是如此

我用VB制作Excel比用c#制作PowerPoint要多,但我想你可以尝试以下几点:

if (selection.GetType == null)

希望这能为您提供进一步研究的途径

在VBA中,我们将首先测试ActiveWindow.Selection.Type属性。如果它等于0,则不选择任何内容。