2017-09-18 1 views
0

J'essaye avec ce code. Mais ça ne marche pas. Qu'est-ce qui ne va pas?pour obtenir de la valeur à partir de n'importe quelle ligne GridView (non seulement sélectionné)

image pour la question:

enter image description here

protected void Button1_Click(object sender, EventArgs e) 
{ 
    for (int i = 0; i < GridView4.Rows.Count; i++) 
    { 
     TextBox2.Text += GridView4.Rows[i].Cells[1].Text.ToString() + ", "; 
    } 
} 
+1

Ce qui ne fonctionne pas dans votre code? Avez-vous une erreur d'exception? – Tcraft

+0

y a-t-il une valeur ajoutée à TextBox2.Text? besoin de mettre à jour votre question avec un peu plus de "ça ne marche pas, ce qui ne va pas" idéalement avec les résultats attendus == foo et résultats réels == bar et c'est ce qui est dans la grille de données " – workabyte

+0

Il n'y a pas d'erreur. J'ai cliqué sur Buton1 apparait en sortie dans la zone de texte ",,," qui contenait la ligne d'arbre gridview – ErdincDonmez

Répondre

-1

utiliser la ligne suivante

TextBox2.Text += GridView4.Rows[i].Cells[1].Value.ToString() + ", "; 
0
  • Vous devez FindControl à l'intérieur GridView et de le jeter par exemple Label.
  • Ajouter des valeurs à List<string>
  • liste Inscrivez-vous par une virgule ,

En solution de contournement:

List<string> valueArray = new List<string>(); 
for (int i = 0; i < GridView4.Rows.Count; i++) 
{ 
    // Label1 is ID of your control in GridView 
    string value = ((Label)GridView4.Rows[i].Cells[1].FindControl("Label1")).Text; 
    valueArray.Add(value); 
} 
TextBox2.Text = string.Join<string>(",", valueArray); // seperate values by , 
0
protected void Button_SonucKaydet_Click(object sender, EventArgs e) 
{// I did with Asif.Ali and Alex Kudryashev's opinion. 
    try 
    {  
     OleDbConnection con = new OleDbConnection(VTYolu); 
     con.Open(); 
     foreach (GridViewRow row in GridView4.Rows) 
     { 
      Label innerLabel = (Label)row.FindControl("Label1x"); 
      DropDownList innerDropdown = (DropDownList)row.FindControl("DropDownList1x"); 
      TextBox innerTextBox = (TextBox)row.FindControl("TextBox4x"); 

      string Ekle1 = "UPDATE Dat_Odev SET [email protected], [email protected], [email protected] WHERE [email protected]"; 
      OleDbCommand Komut1 = new OleDbCommand(Ekle1, con); 
      Komut1.Parameters.AddWithValue("@Tarih", DateTime.Now.ToString()); 
      Komut1.Parameters.AddWithValue("@Sonuc", innerDropdown.SelectedValue); 
      Komut1.Parameters.AddWithValue("@Aciklama", innerTextBox.Text); 
      Komut1.Parameters.AddWithValue("@id", Int32.Parse(innerLabel.Text)); 
      Komut1.ExecuteNonQuery(); 
     } 
     con.Close(); 
     GridView1.DataBind(); 
    } 
    catch (Exception HataKodu) 
    {//Hata oluştuğunda çalışacak kodlar 
     Label_Hata.Visible = true; 
     Label_Hata.Text = "Ödev sonuçlarını kaydederken bir hata oluştu. Veya Veritabanı hatası. Sistem yöneticisi ile irtibata geçiniz. (Hata kodu: " + HataKodu + ")"; 
    } 
}