在ASP.NET WebForms中,你可以使用GridView控件来显示行详细信息的数据表格。以下是一个示例代码:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = SqlDataSource1;
GridView1.DataBind();
}
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Button btnDetails = (Button)e.Row.FindControl("btnDetails");
Panel detailsDiv = (Panel)e.Row.FindControl("detailsDiv");
Label lblDetails = (Label)e.Row.FindControl("lblDetails");
btnDetails.CommandArgument = e.Row.RowIndex.ToString();
btnDetails.Command += new CommandEventHandler(btnDetails_Command);
string details = //获取行详细信息的代码
lblDetails.Text = details;
}
}
protected void btnDetails_Command(object sender, CommandEventArgs e)
{
int rowIndex = int.Parse(e.CommandArgument.ToString());
GridViewRow row = GridView1.Rows[rowIndex];
Panel detailsDiv = (Panel)row.FindControl("detailsDiv");
detailsDiv.Style["display"] = "block";
}
protected void btnBindData_Click(object sender, EventArgs e)
{
GridView1.DataSource = SqlDataSource1;
GridView1.DataBind();
}
上述代码中,GridView控件的每一行中都有一个按钮来显示行的详细信息。当点击按钮时,会触发btnDetails_Command
事件处理程序,将对应行的详细信息显示出来。