Kaygerya ilgilendigin icin tesekkur ederim. Farkli bir sekilde sorunu cozdum. O hatanin sebebi method mus. ExamDoldur(); u parantezin disina atarak sorunu cozdum.
Ilgilenenler icin :
foreach (DataListItem dl1 in DataList1.Items) { if (dl1.ItemType == ListItemType.Item || dl1.ItemType == ListItemType.AlternatingItem) { DataList DataList2 = (DataList)dl1.FindControl("DataList2"); if (DataList2 != null) { foreach (DataListItem dl2i in DataList2.Items) {
DataList1 icinde DataList2 kullanarak textchanged ile guncelleme yapmak istiyorum. Fakat su hatayi aliyorum
Collection was modified; enumeration operation may not execute.
Bu islem icin kullandigim kod soyle :
<asp:DataList ID="DataList2" runat="server" RepeatDirection="Horizontal">
<ItemTemplate>
<asp:LinkButton ID="Label7" runat="server" Text='<%# Eval("ExamID") %>' ForeColor="Black" Visible="False"></asp:LinkButton>
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Eval("Exam") %>' Width="18px" AutoPostBack="True" ontextchanged="TextBox2_TextChanged"></asp:TextBox>
</ItemTemplate>
</asp:DataList>
Burdaki DataList2, DataList1'in icinde yer aliyor.
protected void TextBox2_TextChanged(object sender, EventArgs e)
{
foreach (DataListItem dli in DataList1.Items)
{
DataList DataList2 = (DataList)dli.FindControl("DataList2");
TextBox TextBox2 = (TextBox)DataList2.FindControl("TextBox2");
LinkButton Label7 = (LinkButton)DataList2.FindControl("Label7");
SqlCommand cmdupdate = DBTools.Komut("update Exams set Exam=@Exam where ExamID=@ExamID");
cmdupdate.Parameters.AddWithValue("@Exam", Convert.ToInt32(TextBox2));
cmdupdate.Parameters.AddWithValue("@ExamID", Convert.ToInt32(Label7));
try
{
cmdupdate.Connection.Open();
cmdupdate.ExecuteNonQuery();
ExamDoldur();
cmdupdate.Connection.Close();
}
catch (Exception)
{
throw;
}
}
}
veritabani ise
ExamID int
Exam smallint
Yardimci olabilerseniz buyuk bir bolumu bitmis olacak. Tesekkur ederim.
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
< Bu mesaj bu kişi tarafından değiştirildi stylemania -- 14 Eylül 2015; 15:47:29 >