hej agertoft :o)
hvis du laver noget i denne stil i aspx-filen :
<HTML>
<HEAD>
<title>DataGridPage</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="
http://schemas.microsoft.com/intellisense/ie5"> <style type="text/css">
.itemNeutral { BACKGROUND-COLOR: #ffffff }
.itemIn { BACKGROUND-COLOR: #c0c0c0 }
.itemOut { BACKGROUND-COLOR: #cccccc }
</style>
<script language="javascript">
function changeBackground(row)
{
row.className == "itemIn" ? row.className="itemOut" : row.className="itemIn";
}
</script>
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<asp:DataGrid id="DataGrid1" runat="server">
<Columns>
<asp:ButtonColumn Text="Select" CommandName="Select" Visible="False"></asp:ButtonColumn>
</Columns>
</asp:DataGrid><BR>
</form>
</body>
</HTML>
og noget i denne stil i din code-behind :
protected System.Web.UI.WebControls.DataGrid DataGrid1;
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
DataSet ds = new ExpDataAccess().GetSampleData(10);
this.DataGrid1.DataSource = ds;
this.DataGrid1.DataBind();
}
}
override protected void OnInit(EventArgs e)
{
InitializeComponent();
base.OnInit(e);
}
private void InitializeComponent()
{
this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);
this.DataGrid1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemDataBound);
this.Load += new System.EventHandler(this.Page_Load);
}
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
e.Item.CssClass = "itemNeutral";
e.Item.Attributes["onmouseover"] = "changeBackground(this);";
e.Item.Attributes["onmouseout"] = "changeBackground(this);";
LinkButton lbtn = (LinkButton)e.Item.Cells[0].Controls[0];
e.Item.Attributes["onclick"] = GetPostBackEventReference(lbtn, e.Item.ItemIndex.ToString());
}
}
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
Response.Write("Og der er klikke på række nummer " + e.Item.ItemIndex.ToString());
}
}
skulle du i hvert fald have et noget at komme videre på.
(det er baseret på vs-template, men jeg har fjernet page-directive og det usings, namespace og klassenavn - men du kan paste det ind i noget du har i forvejen).
håber det var noget i den stil du var ude efter - ellers må du råbe op.
mvh