2009-11-26 3 views
0

requête nécessaire pour mettre à jour les valeurs dans dropdownlist qui se trouve dans la listview. alors les valeurs de dropdownlist doivent être remplies table particulière dans la base de données en utilisant C#, ASP.NETdropdownlist dans listview

protected void ListView1_ItemCommand(object sender, ListViewCommandEventArgs e) 
{ 
    float TrSsb; 
    float AchSsb; 
    if (e.CommandName == "Update") 
    { 
     TextBox txtSysmoid = (TextBox)e.Item.FindControl("txtSysmoid"); 
     DropDownList drpRegion = (DropDownList)e.Item.FindControl("drpRegion"); 
     DropDownList drpMoName = (DropDownList)e.Item.FindControl("drpMoName"); 
     TextBox txt1stWeekTar = (TextBox)e.Item.FindControl("txt1stWeekTar"); 

     TextBox txt1stWeekAch = (TextBox)e.Item.FindControl("txt1stWeekAch"); 
     TextBox txt2anWeekTar = (TextBox)e.Item.FindControl("txt2anWeekTar"); 
     TextBox txt2anWeekAch = (TextBox)e.Item.FindControl("txt2anWeekAch"); 
     TextBox txt3rdWeekTar = (TextBox)e.Item.FindControl("txt3rdWeekTar"); 
     TextBox txt3rdWeekAch = (TextBox)e.Item.FindControl("txt3rdWeekAch"); 
     TextBox txt4thWeekTar = (TextBox)e.Item.FindControl("txt4thWeekTar"); 
     TextBox txt4thWeekAchv = (TextBox)e.Item.FindControl("txt4thWeekAchv"); 
     Label lblTotlTar = (Label)e.Item.FindControl("lblTotlTar"); 
     Label lblTotlAchv = (Label)e.Item.FindControl("lblTotlAchv"); 

     float Trnumber1 = float.Parse(txt1stWeekTar.Text); 
     float Trnumber2 = float.Parse(txt2anWeekTar.Text); 
     float Trnumber3 = float.Parse(txt3rdWeekTar.Text); 
     float Trnumber4 = float.Parse(txt4thWeekTar.Text); 
     //float Trtotal = float.Parse(lblTotlTar.Text); 

     TrSsb = Trnumber1 + Trnumber2 + Trnumber3 + Trnumber4; 

     lblTotlTar.Text = TrSsb.ToString(); 

     float Achnumber1 = float.Parse(txt1stWeekAch.Text); 
     float Achnumber2 = float.Parse(txt2anWeekAch.Text); 
     float Achnumber3 = float.Parse(txt3rdWeekAch.Text); 
     float Achnumber4 = float.Parse(txt4thWeekAchv.Text); 
     // float Achtotal = float.Parse(lblTotlAchv.Text); 

     AchSsb = Achnumber1 + Achnumber2 + Achnumber3 + Achnumber4; 

     lblTotlAchv.Text = AchSsb.ToString(); 


     if (TrSsb >= AchSsb) 
     { 

      string updateCommand = "update om_DailyMoWiseCollection_Rpt set om_Region = '" + drpRegion.SelectedValue + "',om_Mo_Name = '" + drpMoName.SelectedValue + "',om_1stWeek_Target = '" + txt1stWeekTar.Text + "',om_1stWeek_Achv = '" + txt1stWeekAch.Text + "',om_2ndWeek_Target = '" + txt2anWeekTar.Text + "',om_2ndWeek_Achv = '" + txt2anWeekAch.Text + "',om_3rdWeek_Target ='" + txt3rdWeekTar.Text + "',om_3rdWeek_Achv ='" + txt3rdWeekAch.Text + "',om_4thWeek_Target ='" + txt4thWeekTar.Text + "',om_4thWeek_Achv ='" + txt4thWeekAchv.Text + "',om_total_Target ='" + lblTotlTar.Text + "',om_total_Achv ='" + lblTotlAchv.Text + "' Where om_sysmo_id = '" + txtSysmoid.Text + "'"; 
      SqlDataSource1.UpdateCommand = updateCommand; 
     } 
    } 
+1

pouvez-vous s'il vous plaît poster une partie du code. – Saar

+0

Pourquoi utiliser une requête pour mettre à jour vos valeurs dans la liste déroulante? Est-ce qu'ils sortent d'une base de données déjà? Vous pouvez simplement utiliser mydropdown.items.add ('anitem'); –

+0

Salut Tony, la liste affiche la valeur de la base de données. Si j'ai besoin de mettre à jour la valeur particulière dont j'ai besoin. La valeur que je dois changer est dans dropdownlist qui est dans la listview. requête s'il vous plaît – indu

Répondre

0

J'envisager d'utiliser un DataGridView à la place. Ceux-ci supportent faire des listes déroulantes dans des cellules et ont l'intégration de base de données plus serrée. Lorsque vous ajoutez une colonne dans le concepteur d'interface utilisateur, vous avez la possibilité de spécifier un DataGridComboBoxColumn pour le type de colonne.

La raison pour laquelle je le ferais est la simplicité et la rapidité de l'accomplissement de la tâche.

Pour faire ce que vous voulez dans une vue de liste, il faut mesurer l'emplacement du sous-élément d'intérêt ... etc. Cela peut être difficile lorsque l'utilisateur a fait défiler un peu.