Tags
Forum
Artikler
Brugere
Stil spørgsmål
1
online
Login
Husk mig
Slette rækker i en DataGridView
Tags:
.net
Bruger #7724
@ 13.12.07 16:09
0
Hej
Jeg skal slette nogle rækker i en DataGridView.
Mit sprog er Visual c# Express.
Efter flere timer på nettet er jeg kommet tæt på
denne løsning (som virker for andre men ikke mig):
private void Btn_SysDel_Click(object sender, EventArgs e)
{
foreach (DataGridView SelRows in
systemsDataGridView.SelectedRows)
{
systemsDataGridView.Rows.Remove(SelRows);
}
}
Meningen er at denne kode skal slette alle de markerede
rækker, men der kommer en fejlmelding.
Hvad gør jeg galt?
Bruger #7724
@ 13.12.07 16:10
0
Nåh ja jeg glemte lige at sige at jeg sagtens kan slette
en række med:
DataGridView1.Rows.Remove(DataGridView1.CurrentRow);
Men hvordan løber man de valgte rækker igennem?
Indlæg senest redigeret d.
13.12.2007 16:12
af Bruger #7724
Bruger #4968
@ 23.12.07 12:53
68
Hej
Der er lidt større semantik i det end umiddelbart bare
at slette currentRow.
Her er noget gammelt slam code til datagrid net 1.1
Dette skulle ihvertfald give dig en ide
ArrayList list = new ArrayList();
int sId;
private void Clientgrid_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
try {
if (e.Button == Windows.Forms.MouseButtons.Right) {
System.Windows.Forms.DataGrid.HitTestInfo hti;
hti = Clientgrid.HitTest(e.X, e.Y);
sPriority = Clientgrid(hti.Row, 0).ToString();
sId = Clientgrid(hti.Row, 1).ToString();
sFirmnamel = Clientgrid(hti.Row, 2).ToString();
sMailaddress = Clientgrid(hti.Row, 3).ToString();
sFname = Clientgrid(hti.Row, 4).ToString();
sLname = Clientgrid(hti.Row, 5).ToString();
sKatagori = Clientgrid(hti.Row, 6).ToString();
}
}
catch {
}
}
public void RemoveSelected()
{
sCounter = 0;
object tmp;
GetSelectedRows(list);
foreach ( tmp in list) {
sId = list.Item(sCounter).ToString;
oDatarow = sDsName.Tables("Postaddresser").Rows.Find(sId);
oDatarow.Delete();
sCounter += 1;
}
try {
updatePostaddresser();
}
catch {
}
}
private void GetSelectedRows(ArrayList list)
{
list.Clear();
CurrencyManager cm = this.BindingContext(Clientgrid.DataSource, Clientgrid.DataMember);
DataView dv = (DataView)cm.List;
for (sId = 0; sId <= dv.Count - 1; sId++) {
if (Clientgrid.IsSelected(sId)) {
list.Add(Clientgrid.Item(sId, 1));
}
}
}
Karma barometer (30 dage)
Modtaget
Givet
X
Favorit hos
Forum tråde
Artikler
Tilføj til dine favorit tags
Fjern fra dine favorit tags