Je génère une table dynamique (testtable
) et simultanément je génère LinkButton
dans la dernière colonne de chaque ligne qui ne se déclenche pas quand je clique dessus. all("Users")
renvoie DataTable
. S'il vous plaît aidez.LInkButton ne déclenche pas l'événement
Markup
<asp:UpdatePanel ID="MainUpdatePanel" runat="server" Visible="false">
<ContentTemplate>
<asp:Table ID="testTable" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
code
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
TableHeaderRow tHeaderRow = new TableHeaderRow();
tHeaderRow.TableSection = TableRowSection.TableHeader;
testTable.Rows.Add(tHeaderRow);
foreach (DataColumn column in all("Users").Columns)
{
TableHeaderCell tHeaderCell = new TableHeaderCell();
tHeaderCell.Text = column.ColumnName;
tHeaderRow.Cells.Add(tHeaderCell);
}
TableHeaderCell tShowHeaderCell = new TableHeaderCell();
tHeaderRow.Cells.Add(tShowHeaderCell);
string id = "";
int i = 0;
foreach (DataRow row in all("Users").Rows)
{
TableRow tRow = new TableRow();
tRow.TableSection = TableRowSection.TableBody;
testTable.Rows.Add(tRow);
foreach (DataColumn column in all("Users").Columns)
{
TableCell tCell = new TableCell();
tCell.Text = row[column.ColumnName].ToString();
tRow.Cells.Add(tCell);
if (column.ColumnName == "id")
id = row[column.ColumnName].ToString();
}
LinkButton showlink = new LinkButton();
showlink.Text = "<i class='icon-file'></i>";
showlink.ID = "linkShow" + "_" + i.ToString();
showlink.CssClass = "tip-top";
showlink.CommandArgument = id;
TableCell tShowCell = new TableCell();
tRow.Cells.Add(tShowCell);
tShowCell.Controls.Add(showlink);
showlink.Click += new EventHandler(Show);
i++;
}
}
protected void Show(object sender, EventArgs e)
{
// Do stuff
}
Parce que vous avez utilisé le panneau de mise à jour, c'est pourquoi il ne reviendra pas sur la page. Vous devez publier la page avec force. ou Vous devriez supprimer le panneau de mise à jour. – Ravikumar
Veuillez arrêter d'utiliser UpdatePanels et essayer de faire une requête depuis javascrip/jquery etc. UpdatePanels est frustrant. – Imad
Merci pour la réponse rapide les gars. @ Ravikumar, vous aviez raison, cela fonctionne quand je supprime le panneau de mise à jour. –