Новичок в программировании, поэтому не уверен в этом
//writer.Flush(); //if you need a flush to come before your control
writer.WriteStartElement("div");
writer.WriteStartAttribute("class");
writer.WriteValue("test"); // OR writer.WriteString("test");
writer.WriteEndAttribute(); //perhaps this way is handled differently.
writer.WriteStartElement("control");// with no attributes to confuse it you might want to name it div
//then your other control stuff
writer.WriteEndElement();// end of the control element
writer.WriteEndElement();// end of the div.
writer.Flush();
Я думаю, что WriteEndElement
решает, будет ли это /> или >‹/имя_элемента> или >UnknownStuff‹/имя_элемента>, поэтому, если у него есть что-то вроде вашего элемента управления или, может быть, сброса, он не знает, как обращаться с вашим элементом управления. Поскольку последним, что он написал, был атрибут, он считает ваш элемент управления странным атрибутом. Поместив элемент управления в элемент, который можно было бы назвать control или ‹ div >, WriteEndElement может подумать, что это странный элемент.
Представьте, как бы вы могли создать WriteEndElement
, если бы писали класс XMLwriter
. С чем он будет иметь дело в своем жизненном цикле. Как он узнает, что они больше не должны быть атрибутами, потому что, возможно, вы можете как-то обмануть его.
Если вы найдете способ заставить его работать, пожалуйста, напишите свой ответ, потому что я знаю, что мне помогло чтение форумов многолетней давности, и я заметил, что обычно вопрос - это ответ примерно на шесть ртов, последний, который, если вы работаете над чем-то, что вы, вероятно, думали что делать к тому времени.
person
AlexanderLife
schedule
28.07.2013