private void UpdateDetailsGrid()
{
   int index = GridView1.SelectedIndex;
   if (index != -1)
   {
      DataKey key = GridView1.DataKeys[index];
      int orderID = (int)key.Value;
      string connectionString =
         "Data Source=Brahams;Initial Catalog=Northwind;Integrated Security =True";
      System.Data.SqlClient.SqlConnection connection =
         new System.Data.SqlClient.SqlConnection(connectionString);
      try
      {
         connection.Open();
         System.Data.SqlClient.SqlCommand command =
            new System.Data.SqlClient.SqlCommand();
         command.Connection = connection;
         command.CommandText = "spOrderDetails";
         command.CommandType = CommandType.StoredProcedure;

         SqlParameter param =
            command.Parameters.AddWithValue("@OrderID", orderID);
         param.Direction = ParameterDirection.Input;
         param.DbType = DbType.Int32;

         SqlDataAdapter dataAdapter = new SqlDataAdapter();
         dataAdapter.SelectCommand = command;
         dataAdapter.TableMappings.Add("Table", "OrderDetails");
         DataSet dataSet = new DataSet();
         dataAdapter.Fill(dataSet);

         DetailsGridView.DataSource = dataSet.Tables["OrderDetails"];
         DetailsGridView.DataBind();
         OrderDetailsPanel.Visible = true;
      }
      finally
      {
         connection.Close();
      }
   }
   else
   {
      OrderDetailsPanel.Visible = false;
   }
}
