HtmlAgilityPack не отдает текст, если он уже встречался в строке - C#

Узнай цену своей работы

Формулировка задачи:

таблица состоит из таких строк
таблица состоит из таких строк
<tr id=num1><td class="num">1</td><td class="num1">1</td><td class="num26">26</td><td class="num22">22</td><td  class="num23">23</td><td  class="num8">8</td></tr>
Делаю так
List<List<string>> table = doc.DocumentNode.SelectSingleNode(ttable)
            .Descendants("tr")
            .Skip(0)
            .Where(tr=>tr.Elements("td").Count()>0)
        .Select(tr=>tr.Elements("td").Select(td => td.InnerText).ToList())
            .ToList();
            dataGridV.RowCount = table.Count;
            dataGridV.ColumnCount = 1;
            foreach(List<string> t in table){
                dataGridV.ColumnCount = t.Count;
                
             foreach(string mstr in t){
                    
                    dataGridV.Rows[table.IndexOf(t)].Cells[t.IndexOf(mstr)].Value = mstr;
                    
                }
                
            }
Все прекрасно работает, ДатаГрид заполняется, но с одним исключением ,если в строке,как в приведенной выше,встречается одинаковый текст,например 1 ,то в ДатаГрид пишется только одно значение, следующая ячейка ,где должно быть такое же значение Грида пустая. подскажите где косячу,Уважаемые..

Решение задачи: «HtmlAgilityPack не отдает текст, если он уже встречался в строке»

textual
Листинг программы
for (int row=0; row<table.Count; row++)
{
    List<string> t = table[row];
    dataGridV.ColumnCount = t.Count;
    for (int col=0; col<t.Count; col++)
    {
        dataGridV.Rows[row].Cells[col].Value = t[col];
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.9 из 5
Похожие ответы