node.Current.SetValue("...") fluke?

XPathNodeIterator nodes = nav.Select("//d:page/d:field/d:value", nsmgr);

...do stuff..

nodes.MoveNext();
nodes.Current.SetValue(i.ToString()); //<-HERE!
nodes.MoveNext();
nodes.Current.SetValue(numPages.ToString());

..do more stuff...

Я использую nodes.Current.SetValue() через эту программу функционируют МНОГИЕ раз, и только в этом единственном экземпляре (каждый раз для этого узла) он просто не хочет работать. С точками останова он покажет, что innerXML этого узла отражает i как и должно быть. После этого печать не работает. В частности, я выбрал этот узел перед сохранением навигационного потока, но все еще ничего. (На самом деле, это не ничто. Кажется, это пробелы или, возможно, даже перевод строки. Я понятия не имею, почему в этом случае это просто не работает. Ниже приведен соответствующий XML для этих двух узлов.

<field sid="PAGE">
      <itemlocation>
        <ae>
          <ae>absolute</ae>
          <ae>1051</ae>
          <ae>899</ae>
        </ae>
        <ae>
          <ae>extent</ae>
          <ae>47</ae>
          <ae>24</ae>
        </ae>
      </itemlocation>
      <value>
      </value>
      <borderwidth>0</borderwidth>
      <fontinfo>
        <ae>Times New Roman</ae>
        <ae>10</ae>
        <ae>plain</ae>
      </fontinfo>
      <justify>center</justify>
      <scrollhoriz>wordwrap</scrollhoriz>
      <scrollvert>fixed</scrollvert>
      <format>
        <ae>string</ae>
        <ae>optional</ae>
      </format>
      <next>OFPG</next>
      <previous>QTYFA_15</previous>
      <acclabel>asterisk.  when used as a.
hand receipt, enter hand receipt annex number.
hand receipt for quarters furniture, enter condition codes.
hand receipt annex or components receipt, enter accounting requirements code, ay r c.
enter page number.</acclabel>
    </field>
    <field sid="OFPG">
      <itemlocation>
        <ae>
          <ae>absolute</ae>
          <ae>1129</ae>
          <ae>899</ae>
        </ae>
        <ae>
          <ae>extent</ae>
          <ae>35</ae>
          <ae>24</ae>
        </ae>
      </itemlocation>
      <value>4</value>
      <borderwidth>0</borderwidth>
      <fontinfo>
        <ae>Times New Roman</ae>
        <ae>10</ae>
        <ae>plain</ae>
      </fontinfo>
      <justify>center</justify>
      <scrollhoriz>wordwrap</scrollhoriz>
      <scrollvert>fixed</scrollvert>
      <format>
        <ae>string</ae>
        <ae>optional</ae>
      </format>
      <previous>PAGE</previous>
      <next>NEXT_BUTTON</next>
      <acclabel>enter total number of pages.</acclabel>
    </field>

Я так растерялся, почему это не работает... У кого-нибудь есть идеи?

РЕДАКТИРОВАТЬ: Дополнительная информация: я изменил XMLDocument, чтобы сохранить пробелы. Кажется, это исправляет вывод пробелов и / или перевода строки, но значение все еще теряется.

1 ответ

Это не работает для обоих узлов, которые вы разместили, или только для одного из них? (Если да, то на кого он работает, а на что нет?)

Другие вопросы по тегам