10. januar 2007 - 14:09Der er
8 kommentarer og 1 løsning
DataGrid virker ikke!
Hej alle sammen.
Jeg har et problem med mit datagrid. Jeg kan simpelthen ikke få den til at give noget output, når jeg trykker på en knap. Jeg syne jeg har prøvet alt, så nu må jeg hellere høre herinde, om der er nogle der kan hjælpe.
jeg har en lille smule codebehind, resten slettede jeg i arrigskab. ups. :)
i Page_Load: if (!Page.IsPostBack) { bindData(); }
protected void bindData() { SqlDataAdapter pris = new SqlDataAdapter("SELECT * FROM Varer WHERE Kategori=" + Request.QueryString["kat"].ToString() + " AND Subkategori=" + Request.QueryString["sub"].ToString() + " ORDER BY Producent ASC",con); DataSet indhold = new DataSet(); pris.Fill(indhold); dgPriser.DataSource = indhold; dgPriser.DataBind(); }
Det jeg gerne vil gøre er, at når man trykker på knappen med ID="kurv", så skal vareID returneres.
Jeg håber, at der er nogle derude der kan hjælpe mig.
Private Sub dgPriser_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles dgPriser.ItemCommand Dim vareID As Integer
Select Case e.CommandName Case "kurv" vareID = Convert.ToInt32(e.CommandArgument) End Select End Sub
min button ser således ud nu: <asp:ImageButton ID="kurv" runat="server" ImageUrl="img/ikoner/Kurv/kurv_i_1.jpg" CommandName="kurv" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "VareID")%>' />
Har tilføjet OnItemCommand="dgPriser_ItemCommand" til <asp:datagrid>
Har ikke problemer med at få det til at virke, selvom jeg normalt arbejder i VB.
Hvis du bruger OnItemCommand="dgPriser_ItemCommand" må funktionen dgPriser_ItemCommand ikke være Private, men skal være enten Protected eller Public dvs.
protected void dgPriser_ItemCommand(.....) eller public void dgPriser_ItemCommand(.....)
Istedet for OnItemCommand="dgPriser_ItemCommand" i aspx filen kan du tilføje en stump kode til funktionen InitializeComponent i din codebehind fil:
this.dgPriser.ItemCommand += new DataGridCommandEventHandler(dgPriser_ItemCommand);
Jeg kan simpelthen ikke forstå, hvorfor det ikke virker... kan det have noget at gøre med web.config? eller nogle begrænsninger på det webhotel jeg ligger på? For jeg mener jeg har haft lignende funktionalitet før, og der virkede det. Det er virkelig underligt.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.