Hallo zusammen,
ich versuche jetzt schon seit längerem bestimmte Daten aus einer Datenbank Tabelle in ein GridView zu schreiben. Das läuft soweit auch ohne Probleme.
Nur möchte ich da noch eine neue Spalte hinzufügen mit einer Checkbox damit ich die Anfrage als erledigt kennzeichen kann und das dann auch in die Datenbank schreiben per z.B. Buttuon klick.
Ich habe bereits gelesen das es wohl über databind() nicht geht. Das man die Daten manuell einlesen muss damit man eigene Spalten hinzufügen kann nur leider weiß ich nicht wie ich die manuell eintragen kann in ein GridView.
Habt ihr da vielleicht eine Idee wie ich das umsetzen kann? Ist vielleicht ein GridView dafür nicht geeignet.
protected void Button1_Click(object sender, EventArgs e)
{
string queryString = "SELECT bearbeitet, name, projekt_id, schwerpunkt, von_datum, bis_datum FROM anforderung WHERE team = 1";
DataSet ds = GetData(queryString);
GridView1.DataSource = ds;
GridView1.DataBind();
}
private DataSet GetData(string queryString)
{
String connectionString = ConfigurationManager.ConnectionStrings["CARSDBConnectionString"].ConnectionString;
DataSet ds = new DataSet();
SqlConnection connection = new SqlConnection(connectionString);
SqlDataAdapter adapter = new SqlDataAdapter(queryString, connection);
adapter.Fill(ds);
return ds;
}
Viele Grüße,
Maurice
Hallo,
Du solltest dich wenn du das so lösen willst, wohl erstmal ein bisschen in die Möglichkeiten von DataSource Objekten in Zusammenhang mit der GridView einlesen.
Wenn du aus der Datenbank ließt, könntest du das ganze über eine SQL Datasource machen.
Über Google findest du sicher auch genug Beispiele wie du damit umgehen kannst und deine Probleme damit lösen kannst.
Edit (zu früh abgesendet):
Wenn du in der GridView eigene Spalten hinzufügen willst, kannst du das z.B. über ein BoundField lösen wo du in einem ItemTemplate eine Checkbox einfügst. Die Spalten kannst du über das Column Property in der GridView nach belieben aufbauen.
Hier ein Beispiel
Oder viel einfacher, der DataTable eine boolean Spalte hinzufügen.