Я пытаюсь создать html-документ с классами.NET XMLDocument в рабочем приложении Winforms.
На данный момент я не могу добавить в текстовое содержимое пробелы.
Вот критический мир кода:
For Each item As DataGridViewCell In row.Cells
Dim content As String = CStr(item.Value)
Dim xmlCell As XmlElement = xmlDoc.CreateElement("td")
xmlCell.AppendChild(xmlDoc.CreateTextNode(" " + content + " "))
Я также пробую вот так:
xmlCell.AppendChild(xmlDoc.CreateTextNode(" " + content + " "))
... но эти пробелы просто игнорируются при показе html-документа с браузером.
Как видно, я должен добавить некоторые пробелы до и после "содержимого", "" + контента + ".
Но это не работает должным образом, поэтому у меня есть точный текст (как написано литературно), а не пробелы в документе.
Как получить пробелы до и после "содержимого" в таком виде программирования?
EDIT: На самом деле, неразрывное пространство должно быть в порядке, но что случилось? Whern пишет через CreateTextNode...
becomes:  
Как этого избежать?
На ваш отредактированный вопрос, по-видимому, достаточно хорошо сказано здесь: вставьте литерал символа NBSP в строку, и XmlDocument должен позаботиться о том, чтобы соответствующим образом выполнить его.
xmlDoc.CreateTextNode(ChrW(&H00A0))
. * Никакой базовый производный, о котором я знаю, не имеет какого-либо характера экранирования.
Я вижу, вы пытаетесь добавить неразрывное пространство.
Это необходимо?
Почему бы вам не попробовать добавить простое пространство до и после?
Пример:
" " + content + " "
Также обратите внимание, что многие XML-фреймворки поддерживают свойство для сохранения пробелов при чтении данных XML.
Вот это свойство: PreserveWhiteSpace
Проверьте эту статью: http://msdn.microsoft.com/en-us/library/bb387014%28v=vs.110%29.aspx
xmlDoc.preserveWhiteSpace = true;
, Обнаружил, что здесь: msdn.microsoft.com/en-us/library/ms256097%28v=vs.110%29.aspx «По умолчанию Microsoft XML Core Services (MSXML) не учитывает атрибут xml: space.»