私はしばらくの間、これに対する答えを探していました。私はグリッドビューではなく、スタイル付きdivを介してレコードを表示するページを持っています。私は各レコードのボタンを作成することができました。グリッドビューを使用しない各レコードの動的DELETE asp.netボタンを作成
Imports sc
Imports sq
Imports System.Data
Partial Class _Default
Inherits System.Web.UI.Page
Dim c As New sc
Dim q As New sq
Public IsAdmin As String = "0"
Private Sub _Default_PreRender(sender As Object, e As EventArgs) Handles Me.PreRender
c.ReadS(q.IsAdminStr)
If c.sqldr.Read Then IsAdmin = "1"
c.con.Close()
If IsAdmin = "1" Then admin.Visible = True
c.FillDS(q.CurrStatStr)
For Each dr As DataRow In c.sqldt.Rows
systems.Controls.Add(New LiteralControl("<div class=""system""><table width=""100%""><tr><td width=""50%"" style=color:#00a0d0>"))
systems.Controls.Add(New LiteralControl(dr("system")))
systems.Controls.Add(New LiteralControl("</td><td width=""50%"" align=""right"" style=color:" & dr("colourhex") & ">" & dr("status")))
systems.Controls.Add(New LiteralControl("</td></tr>"))
systems.Controls.Add(New LiteralControl("</table>"))
If dr("status").ToString <> "Running" Then
systems.Controls.Add(New LiteralControl("<hr><table width=""100%""><tr><td>" & dr("comments") & "</td></tr></table>"))
End If
If IsAdmin = "1" Then
systems.Controls.Add(New LiteralControl("<div class=""sysadmin"">"))
Dim btn As New Button
btn.CommandArgument = dr("id")
btn.Text = "Update"
btn.CssClass = "btn"
AddHandler btn.Click, AddressOf btn_click
systems.Controls.Add(btn)
systems.Controls.Add(New LiteralControl("</div>"))
End If
systems.Controls.Add(New LiteralControl("</div>"))
Next
End Sub
Public Sub btn_click(ByVal sender As Object, ByVal e As EventArgs)
Dim btn As Button = CType(sender, Button)
Response.Redirect("Subscribe.aspx?id=" & btn.CommandArgument)
MsgBox(btn.CommandArgument)
End Sub
End Class
私はresponse.redirectをテストするために追加しましたが、これは機能しません。どのように私は、私が押されたボタンのレコードのIDに関連する何かを追加したボタンを取得します。
これは意味のある人たちです。
ありがとうございます。 (これの一部が誤ってフォーマットされている場合、私はまだスタックオーバーフローに新しいですお詫び申し上げます。。)
どのようなタイプが 'systems'ですか? – mxmissile
こんにちは、システムは単なるdivです。
–