Доступ к содержимому XAML в расширении VS - PullRequest
0 голосов
/ 25 октября 2018

В настоящее время я разрабатываю расширение, которое помогает мне сканировать мой код, особенно файлы XAML.Код, касающийся моей проблемы, выглядит так:

  For Each file As ProjectItem In SolutionFiles()
     If file.Name.EndsWith(".xaml") Then
        Dim win As Window = file.Open(EnvDTE.Constants.vsViewKindCode)

        For Each elem As CodeElement In win.ProjectItem.FileCodeModel.CodeElements
           Dim strLine() As String = elem.StartPoint.CreateEditPoint().GetText(elem.EndPoint).Split("vbcrlf")
           Dim Linecount As Integer = 0
           For Each line As String In strLine
           ...
           Next
        Next
     End If
  Next

Я понял, что file.Open (EnvDTE.Constants.vsViewKindCode) дает мне связанный код xaml.vb, а не сам код xaml.Но когда я пытаюсь использовать file.Open (EnvDTE.Constants.vsViewKindDesigner), win.ProjectItem.FileCodeModel имеет значение Nothing.

Любая помощь приветствуется.Благодарю.:)

1 Ответ

0 голосов
/ 26 октября 2018

Получил ответ за это:

 Dim codeWin As Window = file.Open(EnvDTE.Constants.vsViewKindPrimary) 
 Dim fileName As String = If(codeWin IsNot Nothing, codeWin .Document.Path & file.Name, Nothing)
 Dim content As String = If(Not String.IsNullOrEmpty(fileName), System.IO.File.ReadAllText(fileName), Nothing)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...