Crew .NET |
|
1. In een HTML pagina kan je geen ASP.NET gebruiken, het is dus een aspx-pagina...
2. Hier is de oplossing:
Default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>.: .NET met titjes :.</title>
</head>
<body>
<form id="form_een" runat="server">
<div align="center">
<asp:DataGrid ID="grid_een" runat="server" OnItemCommand="actie_Click" AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3">
<Columns>
<asp:ButtonColumn DataTextField="voornaam" COmmandName="item_klikken" HeaderText="Voornaam" Text="Button" />
<asp:BoundColumn HeaderText="Achternaam" DataField="achternaam" />
</Columns>
<FooterStyle BackColor="White" ForeColor="#000066" />
<SelectedItemStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" Mode="NumericPages" />
<ItemStyle ForeColor="#000066" />
<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
</asp:DataGrid>
<br />
Achternaam: <asp:TextBox ID="naam_datagrid" runat="server" />
</div>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>.: .NET met titjes :.</title> </head> <body> <form id="form_een" runat="server"> <div align="center"> <asp:DataGrid ID="grid_een" runat="server" OnItemCommand="actie_Click" AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3"> <Columns> <asp:ButtonColumn DataTextField="voornaam" COmmandName="item_klikken" HeaderText="Voornaam" Text="Button" /> <asp:BoundColumn HeaderText="Achternaam" DataField="achternaam" /> </Columns> <FooterStyle BackColor="White" ForeColor="#000066" /> <SelectedItemStyle BackColor="#669999" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" Mode="NumericPages" /> <ItemStyle ForeColor="#000066" /> <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" /> </asp:DataGrid> <br /> Achternaam: <asp:TextBox ID="naam_datagrid" runat="server" /> </div> </form> </body> </html>
Default.aspx.cs
using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
SqlConnection verbinding = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=H:\\C#\\DataGrid Tekstvak\\App_Data\\Database.mdf; Integrated Security=True; User Instance=True");
SqlCommand commando;
SqlDataAdapter da;
DataSet ds;
string query, naam;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData();
}
}
protected void actie_Click(object sender, DataGridCommandEventArgs e)
{
if (e.CommandName == "item_klikken")
{
naam = e.Item.Cells[1].Text;
naam_datagrid.Text = naam;
}
}
protected void BindData()
{
query = "SELECT voornaam, achternaam FROM leden";
commando = new SqlCommand(query, verbinding);
da = new SqlDataAdapter(commando);
ds = new DataSet();
da.Fill(ds);
grid_een.DataSource = ds;
grid_een.DataBind();
}
}
using System.Web .UI .WebControls ;using System.Web .UI .WebControls .WebParts ;using System.Web .UI .HtmlControls ; public partial class _Default : System.Web .UI .Page { SqlConnection verbinding = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=H:\\C#\\DataGrid Tekstvak\\App_Data\\Database.mdf; Integrated Security=True; User Instance=True"); SqlCommand commando; SqlDataAdapter da; DataSet ds; string query, naam; protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindData(); } } protected void actie_Click(object sender, DataGridCommandEventArgs e) { if (e.CommandName == "item_klikken") { naam = e.Item.Cells[1].Text; naam_datagrid.Text = naam; } } protected void BindData() { query = "SELECT voornaam, achternaam FROM leden"; commando = new SqlCommand(query, verbinding); da = new SqlDataAdapter(commando); ds = new DataSet(); da.Fill(ds); grid_een.DataSource = ds; grid_een.DataBind(); } }
Voorbeeld van wat ik heb gemaakt staat HIER, het is enkel een afbeelding en dus geen aspx-pagina...
Hier is er een kolom 'voornaam' en 'achternaam', als je op de voorrnaam klikt wordt de achternaam in het tekstvak weergegeven. Ik was vergeten met de namen van jouw topic te werken, maar het principe is hetzelfde. De data komt uit een SQL-database. Als er nog vragen zijn of je begrijpt iets niet: stel gerust!
Aan de crew: sorry voor de lange code die hier staat, maar ik denk niet dat er iemand direct met een andere oplossing komt ^^
Aangezien je de code in VB.NET nodig hebt, heb ik de mijne omgezet... De form blijft hetzelfde alleen is de Page Language nu "VB" en niet "C#", en de CodeFile is nu Default.aspx.vb... Goed, de code:
Imports System.Data
Imports System.Data.SqlClient
Partial Class _Default
Inherits System.Web.UI.Page
Dim verbinding As SqlConnection
Dim commando As SqlCommand
Dim da As SqlDataAdapter
Dim ds As DataSet
Dim query, naam As String
Protected Sub Page_Load(ByVal sender As Object, ByVal E As EventArgs) Handles MyBase.Load
If Not Page.IsPostBack Then
BindData()
End If
End Sub
Protected Sub actie_Click(ByVal sender As Object, ByVal E As DataGridCommandEventArgs)
If E.CommandName = "item_klikken" Then
'Waarschijnlijk zat hier je fout (ronde haken ipv vierkante]
naam = E.Item.Cells(1).Text
naam_datagrid.Text = naam
End If
End Sub
Protected Sub BindData()
verbinding = New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=H:\C#\DataGrid Tekstvak\App_Data\Database.mdf; Integrated Security=True; User Instance=True")
query = "SELECT voornaam, achternaam FROM leden"
commando = New SqlCommand(query, verbinding)
da = New SqlDataAdapter(commando)
ds = New DataSet()
da.Fill(ds)
grid_een.DataSource = ds
grid_een.DataBind()
End Sub
End Class
Partial Class _Default Dim verbinding As SqlConnection Dim commando As SqlCommand Dim da As SqlDataAdapter Dim ds As DataSet Dim query, naam As String Protected Sub Page_Load(ByVal sender As Object, ByVal E As EventArgs) Handles MyBase.Load If Not Page.IsPostBack Then BindData() Protected Sub actie_Click(ByVal sender As Object, ByVal E As DataGridCommandEventArgs) If E.CommandName = "item_klikken" Then 'Waarschijnlijk zat hier je fout (ronde haken ipv vierkante] naam = E.Item.Cells(1).Text naam_datagrid.Text = naam End If End Sub Protected Sub BindData() verbinding = New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=H:\C#\DataGrid Tekstvak\App_Data\Database.mdf; Integrated Security=True; User Instance=True") query = "SELECT voornaam, achternaam FROM leden" commando = New SqlCommand(query, verbinding) da = New SqlDataAdapter(commando) ds = New DataSet() da.Fill(ds) grid_een.DataSource = ds grid_een.DataBind() End Sub End Class
|