2010-12-14 11 views
0

Ich habe eine C# Winform-Anwendung (2008) mit DataGridview an Daten von SQLServer gebunden. Ich muss Kontrollkästchen in der Nähe jeder sichtbaren Zeile des Gitters anzeigen, um Zeilen für die weitere Arbeit auszuwählen, alle Daten im Datagrid werden nur gelesen, aber von Zeit zu Zeit mit einer anderen Anzahl von Zeilen neu geladen.checkboxes mit datagridview

brauche ich einige Hinweise und wie vorzuziehen Idee auszuführen:

-oder programmatisch Kontrollkästchen erstellen - dann, wie soll ich wissen, dass ihre Standorte (ich will sie einmal setzen, natürlich :)), die Datenzeilen werden angezeigt und wie viele?

-oder checklistbox stattdessen verwenden - wie soll ich dann mehrere an Daten gebundene Spalten erstellen und Spaltentitel anzeigen?

-oder vielleicht zusätzliche Kontrollkästchen Spalte in Datagrid erstellen - wie sollte ich dann Daten zu Datagrid jedes Mal neu laden, wenn es geändert wird?

-oder irgendeine andere Idee ???

danke!

Antwort

0

Sie müssen zusätzliche CheckBox column erstellen, um den Vorgang auszuführen.

Für immer aktuell ausgewählte Zeilenwert versuchen

string value=DataGridView1.CurrentRow.Cells["cell1"].Value.ToString(); 

OR versuchen

private void DataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) 

{ 
    chk = (CheckBox)e.Control; 
    chk.CheckedChanged -=new EventHandler(chk_CheckedChanged); 
    chk.CheckedChanged +=new EventHandler(chk_CheckedChanged); 

} 
private void chk_CheckedChanged(object sender, EventArgs e) 
     { 

     } 

Und diese DataGridViewCheckBoxColumn hinzufügen, wenn Sie Datagridview

+0

binden es war viel einfacher, als ich dachte ... :) Vielen Dank! – Leon