2015-08-13 2 views
-1

EDITED: Я попытаюсь объяснить это более четко. У меня есть xml файл загружен в мой datagridview. Файл, который я загрузить в DataGridView выглядит следующим образом:Как удалить все проверенные строки имен в DataTable?

<?xml version="1.0" standalone="yes"?> 
<program> 
    <group active="1" name="name3"> 
    <item active="Active"> 
     <id>name3</id> 
     <ip>223.26.0.0</ip> 
     <names>jakas strona</names> 
     <comment>komentarz</comment> 
    </item> 
    <item active="Active"> 
     <id>name3</id> 
     <ip>223.26.0.0</ip> 
     <names>jakas strona</names> 
     <comment>komentarz</comment> 
    </item> 
    </group> 
</program 

В моей программе я есть CheckedListBox которым содержит имена групп «NAME1», «NAME2» и т.д. Мой код в кнопку удаления удалить имя группы на checklistbox + все строки, в которых содержится эта группа имен. Я хочу изменить свою кнопку, чтобы удалить выбранный элемент checklistbox (имя группы) и все строки, в которых содержится это имя группы. Надеюсь, я объяснил это более сговоркой. Это мой код удаления кнопки:

private void deleteButton_Click(object sender, EventArgs e) 
{ 
    if (checkedListBox1.SelectedIndex == 1) 
    { 
     // string groupName = group.Attribute("name").Value; 
     hostsDataSet.Tables["group"].Rows[0].Delete(); 
    }    
} 
+0

Объяснить ... – Sathish

ответ

0

Вы должны также обновить набор данных после того, как da.Update (hostsDataSet, «Temp»);

+0

Это не помогло. – speedvees

+0

try hostsDataSet.Tables ["group"]. AcceptChanges(); – Pramod

0
List<DataRow> rows_to_remove = new List<DataRow>(); 
//first add the match item to List like 

foreach (DataRow row1 in dt1.Rows) 
{ 
    foreach (DataRow row2 in dt2.Rows) 
    { 
     if (row1["Name"].ToString() == row2["Name"].ToString())// change here as check box conditions 
     { 
      rows_to_remove.Add(row1); 
     } 
    } 
} 


    enter code here 

foreach (DataRow row in rows_to_remoenter code hereve) 
{ 
    dt1.Rows.Remove(row); 
    dt1.AcceptChanges(); 
} 
Смежные вопросы