abdul subhan mohammed Ответов: 1

Как получить ленту приложения excel-Скрыть/показать с помощью interop C#


Дорогие Все,

Я создаю приложение windows на c#, где автоматизирую MsOffice Excel.

Я пытаюсь получить ленту приложения excel в настоящее время hide/show.

Следующий код:

Что я уже пробовал:

public static bool EvaluateRibbonDisplay(IQuestion question, string filename, ShowHide display)
{
    ExcelInterop.Application excelApplication = null;
    try
    {
        excelApplication = new ExcelInterop.Application() { Visible = false, DisplayAlerts = false, ScreenUpdating = false };
        ExcelInterop.Workbook excelWorkbook = excelApplication.Workbooks.Open(filename);

        bool result = false;
        var abc = excelApplication.ExecuteExcel4Macro("Get.ToolBar(7,\"Ribbon\")"); \\always returing true
        var abcd = excelApplication.CommandBars["Get.ToolBar(7,\"Ribbon\")"].Enabled;\\always returing true
        if (excelApplication.ExecuteExcel4Macro("Get.ToolBar(7,\"Ribbon\")") == Convert.ToBoolean(EnumStringExtension.GetDescription(display)))
            result = true;

        excelWorkbook.Close();

        return result;
    }
    catch (Exception)
    {
        return false;
    }
    finally
    {
        QuitApplication(excelApplication);
    }
}


чтобы скрыть / показать ленту, я использую Ctrl+F1. Но приведенный выше код возвращает всегда true.

кто-нибудь может мне помочь, как я могу получить статус ленты.

Заранее спасибо.

1 Ответов

Рейтинг:
0

Patrice T

Я боюсь, что это ответ на предыдущий вопрос этого вампира Q/A. :-)

abdul subhan mohammed

в обоих вопросах, когда я пытаюсь скрыть / показать ленту, по коду.. не работает,
также я не могу оценить погоду, когда лента скрыта/показана.