गतिशील तालिका चेक बॉक्स एक "चेक किए गए" सही मूल्य नहीं होने

वोट
0

मैं के रूप में सी # कोड आधार के साथ ASP.NET का उपयोग कर एक वेब अनुप्रयोग पर काम कर रहा है। मैं एक गतिशील तालिका है कि एक SQL क्वेरी से एक वापसी के आधार पर आकार बदलता है, चेक बॉक्स के साथ प्रत्येक पंक्ति के तीसरे कक्ष में जोड़ा। चेकबॉक्स एक सूचकांक और तिथि के अनुसार एक आईडी निर्दिष्ट नहीं की।

जब उपयोगकर्ता बटन प्रस्तुत मारा, कोड प्रत्येक पंक्ति है कि चेक किया गया है में से एक मान प्राप्त करने के लिए माना जाता है। हालांकि, जब पंक्तियों के माध्यम से पाशन, चेक बॉक्स में से कोई भी कभी भी चेक किए गए संपत्ति के लिए सच का एक मूल्य है। आईडी बनी रहती है, लेकिन चेकबॉक्स का मूल्य खो दिया जा रहा है।

स जोड़ने के लिए कोड:

cell = new TableCell();  
CheckBox cb = new CheckBox();  
cell.ApplyStyle(TS);  
cb.ID = index.ToString() +   +  lstDate.SelectedItem.Text.ToString();  

if (reader[RestartStatus].ToString() == 0)  
{  
     cb.Checked = false;  
     cb.Enabled = true;  
}  
else  
{  
     cb.Checked = true;  
}  
cell.Controls.Add(cb);  

चेकबॉक्स मूल्य प्राप्त करने के लिए कोड:

for (int i = 0; i < CompTable.Rows.Count; i++)  
{  
    int t3 = CompTable.Rows[i].Cells[2].Controls.Count;  
    Control temp = null;  
    if (t3 > 0)  
    {  
        temp = CompTable.Rows[i].Cells[2].Controls[0];  
    }  

    string t2 = i.ToString() +   + lstDate.SelectedItem.Text.ToString();  
    if ( temp != null && ((CheckBox)temp).ID == i.ToString() +   +   lstDate.SelectedItem.Text.ToString())  
    {  
        //Separated into 2 if statements for debugging purposes  
        //ID is correct, but .Checked is always false (even if all of the   boxes are checked)  
        if (((CheckBox)temp).Checked == true)  
        {  
            tlist.Add(CompTable.Rows[i].Cells[0].Text.ToString());  
        }  
    }  
}
04/08/2009 को 16:17
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


1 जवाब

वोट
0

एक मूल्य के न होने के गतिशील नियंत्रण के लिए सबसे संभावित कारण यह है कि वे या तो बाद ViewState लोड किया गया है बनाए गए थे, या पहले पढ़ है।

सामान्य शब्दों में, गतिशील नियंत्रण PageInit घटना के दौरान बनाया जाना चाहिए, और के दौरान या Pageload घटना के बाद पढ़ा।

04/08/2009 को 16:26
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more