Ich habe ein Problem, bei dem mein Button-Steuerelement, das dynamisch generiert wird, nur in der letzten Zeile angezeigt wird. Ich habe in diesem Beitrag seheDynamic Button-Steuerelement erscheint nur in der letzten Zeile
aber es deutet auf eine Listview verwendet, die ich nicht glaube, ich in diesem Fall verwenden kann. Ich erzeuge eine HTML-Tabelle mit einem Panel-Steuerelement und SQL-Daten und es wird meiner Meinung nach sehr spezifisch. Hier ist mein Code hinter:
//declare a dynamic button
Button btn_continue = new Button();
btn_continue.Click += Btn_continue_Click;
btn_continue.CssClass = "controlButtons";
btn_continue.Font.Size = 20;
btn_continue.Text = "Continue this job";
//formatting for the rows
int oddNumber = 1;
foreach (DataRow row in dtGetIncompleteJobs.Rows)
{
//grab the date and make it shorter
DateTime date = Convert.ToDateTime(row[3].ToString());
pnl_jobList.Controls.Add(new LiteralControl("<tr>"));
if (centralFunctions.OddNumberCheck(oddNumber) == true)
{
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-1 col-1-m lightRow'>" + row[5].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m lightRow'>" + date.ToShortDateString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m lightRow'>" + row[0].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m lightRow'>" + row[1].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m lightRow'>" + row[2].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-1 col-1-m lightRow'>" + row[4].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m'>"));
btn_continue.ID = row[5].ToString();
pnl_jobList.Controls.Add(btn_continue);
pnl_jobList.Controls.Add(new LiteralControl("</td>"));
oddNumber++;
}
else
{
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-1 col-1-m darkRow'>" + row[5].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m darkRow'>" + row[3].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m darkRow'>" + row[0].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m darkRow'>" + row[2].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m darkRow'>" + row[2].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-1 col-1-m darkRow'>" + row[4].ToString() + "</td>"));
pnl_jobList.Controls.Add(new LiteralControl("<td class='col-2 col-2-m'>"));
btn_continue.ID = row[5].ToString();
pnl_jobList.Controls.Add(btn_continue);
pnl_jobList.Controls.Add(new LiteralControl("</td>"));
oddNumber++;
}
pnl_jobList.Controls.Add(new LiteralControl("</tr>"));
}
Und hier ist, wie es aussieht: html output
Ist es möglich, das Steuerelement Button auf jeder Zeile die Art, wie ich tue, es zu bekommen? Ich habe das Gefühl, ich vermisse etwas Einfaches oder gehe den falschen Weg. Lassen Sie mich wissen, wenn ich irgendwelche Details ausgelassen habe. Danke für die Hilfe.
Haben Sie versucht, eine neue Schaltfläche für jede Zeile zu schaffen. – Scrobi