0

我正在开发我的第一个 Web 项目,在使用 GridView 时需要帮助添加 IF 逻辑。我有一个页面(CustomerListPage),其中有一个 GridView 项目,该项目显示可以单击的客户(行)列表。单击客户后,用户将被重定向到名为“CustomerUsagePage”的页面,该页面显示该客户的最新记录。这是我的 CustomerListPage 的 GridView 代码的样子:

 if (GridView1.SelectedRow.RowIndex == 0)
   {
       //string selectedUser = GridView1.SelectedRow.Cells[0].ToString();
       Response.Redirect("CustomerUsagePage.aspx?Customer_Name=" );
       BindGridview();
   }

我的 CustomerUsagePage 的代码如下所示:

private void BindControlvalues()
{

    con.Open();
    SqlCommand cmd = new SqlCommand("select * from dbo.CustomerTable", con);
    SqlDataAdapter da = new SqlDataAdapter(cmd);
    con.Close();
    DataSet ds = new DataSet();
    da.Fill(ds);
    Label4.Text = ds.Tables[0].Rows[0][1].ToString();
    Label1.Text = ds.Tables[0].Rows[0][0].ToString();
    Label2.Text = ds.Tables[0].Rows[0][3].ToString();
    Label3.Text = ds.Tables[0].Rows[0][4].ToString();
}

我的问题是我只能在 GridView 所在的页面添加 IF 逻辑。我想点击一个客户,让他的数据出现在我的 CustomerUsagePage 上,并带有 if 语句。可能吗?我知道我可以通过为每个客户添加一个页面来做到这一点,但我不想走那条路,这似乎很乏味。有没有人有什么建议?

4

1 回答 1

2

您可以使用GridView-FormView (Master/Detail) Control

链接: http: //www.codeproject.com/Articles/16780/GridView-FormView-Master-Detail-Control

或者您可以将经典行为与ItemCommand事件一起使用

void GridView_RowCommand(Object sender, GridViewCommandEventArgs e)
{
    if(e.CommandName=="Add")
    {
      int index = Convert.ToInt32(e.CommandArgument);

      GridViewRow row = CustomersGridView.Rows[index];

      .....//Adjust your Response
    }
}
于 2012-09-26T14:11:26.053 回答