Hej Vi skall se om jag kan guida dig. Tack för svaret. Hej, Tack för svaret OK Tack TobbeHur får jag tag på markerad rads data programmässigt i en DataGridView
Jag är nybörjare i .NET-världen och har tidigare lekt i Delphi. Jag har svårt att hitta olika fälts värden i svaret på en fråga.
Jag har en DataGridView som är bunden till en DataSource, DataTable och en DataAdapter. Mina användare skall dubbelklicka på en rad i min DataGridView och då skall den postens data visas i ett detaljformulär för uppdatering. För att visa detaljposten måste jag veta på vilken post i gridden som användaren klickade. Hur får jag tag på den?
Hur får jag överhuvud taget tag på enskilda fältvärden i vald post i gridden?
Tackar på förhand
LillemorSv: Hur får jag tag på markerad rads data programmässigt i en DataGridView
Du har en DataGridView där du har talat om att du skall ha en select-knapp. När du sedan lägger till en
FormView t ex och så tar du en ny DataAdapter konfigurerar den och när du kommer fram till din sql
och WHERE så markera du id = "form" och sist att formen är DataGridView .
Nu är allt skrivit i minnet men på ett ungefär skall det fungera.Sv:Hur får jag tag på markerad rads data programmässigt i en DataGridView
Vad jag helst önskar är att kunna få tag på värdet i en kolumn.
Användaren väljer en rad och jag vill hämta värdet i en viss kolumn på den rad som användaren har valt.
Det är ofta primärnyckeln.
Tack på förhand
LillemorSv: Hur får jag tag på markerad rads data programmässigt i en DataGridView
Kikar du på obektets egenskaper hittar du bl.a. "SelectedCells", "SelectedColumns" och "SelectedRows".
http://msdn2.microsoft.com/en-us/library/system.windows.forms.datagridview.selectedcells(VS.85).aspx
För att försäkra dig om att användaren endast kan markera celler vågrätt kan du sätta egenskapen "SelectionMode" till "FullRowSelect".
// TobbeSv:Hur får jag tag på markerad rads data programmässigt i en DataGridView
Nu kom jag vidare...
Jag tycker fortfarande att det är bökigt att få tag på lagrade värden i databasen.
Antag att jag hämtar 15 poster från databasen. I dessa poster finns 2 numeriska fält(double) som skall användas för en beräkning för varje post. Posten skall sedan uppdateras i ett tredje fält och så småningom skall jag ta fran en totalsumma på beräkningen.
Hur kommer jag enklast åt lagrade värden, beräknar och sparar resultatet i ett resultatfält?
Allt känns oerhört omständligt jämfört med Delphi.
Åter igen, mycket tacksan för svar.
LillemorSv: Hur får jag tag på markerad rads data programmässigt i en DataGridView
Har inte arbetat så mycket med DataGridView objektet men har skrivit en snippet du kanske kan bygga något av, har inte testat koden själv.
// Tobbe
Vi antar en tabell med kundinformation, 3st kolumner med kundnr, kreditsaldo1 och kreditsaldo2.
// Stegar igenom markerade kundposter
foreach (DataGridViewRow dgRow in dataGridView1.SelectedRows)
{
String CustomerID, Credit1, Credit2;
Int16 Counter = 1;
// Hämtar informationen från kundposten
foreach (DataGridViewCell dgCell in dgRow.Cells)
{
switch (Counter)
{
case 1:
CustomerID = dgCell.Value.ToString();
break;
case 2:
Credit1 = dgCell.Value.ToString();
break;
case 3:
Credit2 = dgCell.Value.ToString();
break;
}
Counter++;
}
// Här finns nu informationen för den aktuella
// kundposten i CustomerID, Credit1 & Credit2
}
Sv:Hur får jag tag på markerad rads data programmässigt i en DataGridView
Ett varmt tack.
Testar så fort jag hinner.
Lillemor