private async Task ConvertDocumentAsync(string documentPath, Span selected, CancellationToken cancellationToken)
        {
            if (documentPath == null || !CodeConversion.IsCSFileName(documentPath))
            {
                return;
            }

            try {
                await _codeConversion.ConvertDocumentAsync <CSToVBConversion>(documentPath, selected, cancellationToken);
            } catch (Exception ex) {
                await VisualStudioInteraction.ShowExceptionAsync(ex);
            }
        }
        private async Task ProjectItemMenuItem_BeforeQueryStatusAsync(object sender, EventArgs e)
        {
            if (sender is OleMenuCommand menuItem)
            {
                menuItem.Visible = false;
                menuItem.Enabled = false;

                string itemPath = await VisualStudioInteraction.GetSingleSelectedItemPathOrDefaultAsync();

                if (itemPath == null || !CodeConversion.IsCSFileName(itemPath))
                {
                    return;
                }

                menuItem.Visible = true;
                menuItem.Enabled = true;
            }
        }