Я ищу решение, чтобы узнать, какая текстовая форма была обновлена (текст изменен внутри фигуры) в AddIn с помощью VSTO C#. После исследования я вижу только возможности с событием Application_WindowSelectionChange.
Это событие вызывается только при выборе Shape. Но я понял, что это событие не запускается, когда я щелкаю прямо в фигуре, чтобы я мог редактировать текст.
Этот код работает, если фигура выбрана (также внутри группы).
private void Application_WindowSelectionChange(PowerPoint.Selection oSelection)
{
if (oSelection.Type == PowerPoint.PpSelectionType.ppSelectionShapes)
{
if (oSelection.ShapeRange.Type == Office.MsoShapeType.msoGroup)
{
if (oSelection.ShapeRange[1].Name == "abc"
{
if (oSelection.ShapeRange[1].GroupItems.Count > 1)
{
PowerPoint.Shape oShapeInRange = Globals.ThisAddIn.Application.ActiveWindow.Selection.ChildShapeRange[1];
MessageBox.Show(oShapeInRange.Name);
}
}
}
}
}
Существует ли решение / обходной путь, позволяющий узнать, был ли отредактирован текст указанной формы c (событие для перехода в текстовую форму, а также после обновления текста в форме, оставив модус редактирования текста формы).