22. november 2011 - 14:02Der er
1 kommentar og 1 løsning
Winforms og DataGridView
Hej,
Hvordan får jeg fat i en valgt rækkes indhold? Og ikke mindst, hvordan får jeg det gjort sådan, at brugeren ikke kan redigere i felterne (og det er alle felter). Det jeg ønsker, er når en bruger klikker på en række skal der fremkomme en ny form med rækkens indhold i.
Det jeg har forsøgt:
private void grdCases_CellClick(object sender, DataGridViewCellEventArgs e) { //label2.Text = grdCases.Item(0,tblBarang.CurrentRow.Index).Value int i; int j; i = e.RowIndex; j = e.ColumnIndex;
if (grdCases.SelectedRows.Count > 0) { label2.Text = Convert.ToString(grdCases.SelectedRows[0].Cells[2].Value); }
}
private void grdCases_CellContentClick(object sender, DataGridViewCellEventArgs e) { int i; int j; i = e.RowIndex; j = e.ColumnIndex;
if (grdCases.SelectedRows.Count > 0) { label2.Text = Convert.ToString(grdCases.SelectedRows[0].Cells[2].Value); } }
Hver gang kan jeg se, at den siger, der ikke er valgt nogen række - altså at SelectedRows.Count = 0.... Men det passer altså ikke jeg vælger række to og går ind i metoden :-)
Jeg har fundet ud af den ene ting selv.....desværre ikke den, der er vigtigst...Nemlig ved at sætte ReadOnly = true på gridviewet kan man ikke editere.
Det eneste (hvis andre skulle bruge den her) man skal være opmærksom på, at det er den indhentede datatable den søger på - altså hvis du i kolonne 1 har id og kolonne 2 navn og kolonne 3 har adresse men kun viser kolonne 1 og 3 i gridviewet, så vil
label2.Text = row[1].ToString();
give dig navn og ikke (som jeg troede) adressen :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.