2011-12-09 8 views
5

मैं इसे कुछ घंटों के लिए काम करने की कोशिश कर रहा हूं लेकिन Google से कुछ भी मुझे समस्या को ठीक करने में मदद नहीं कर सकता है।दोहराने के भीतर टेक्स्टबॉक्स से मूल्य प्राप्त करें asp.net C#

<asp:Panel ID="userDefDiv" Visible="false" runat="server"> 
       <asp:Repeater ID="userDefRepeater" EnableViewstate="false" runat="server"> 
        <ItemTemplate> 
         <asp:TextBox ID="TextBox1" runat="server" EnableViewState="false"></asp:TextBox><br/> 
        </ItemTemplate> 
       </asp:Repeater> 
      </asp:Panel> 

userDefDiv पैनल एक और पैनल है, जो contentPLaceHolder अंदर है अंदर है:

मैं एक बहुत ही सरल पुनरावर्तक नियंत्रण है। उपयोगकर्ता डीफडिव के मूल पैनल में "enableviewstate =" false "" नहीं है।

तो। इस पृष्ठ पर सबकुछ कुछ linkbuttons_click के बाद होता है। तो पेज_लोड के दौरान कुछ भी नहीं होता है। और जब मैं एक और लिंकबटन क्लिक करता हूं, तो मैं दोहराना के भीतर मौजूद विभिन्न टेक्स्टबॉक्स से डेटा प्राप्त करना चाहता हूं।

सी # कोड:

यह सब पुनरावर्तक आइटम बनाने के लिए कोड है।

public void createUserDef() 
{ 
     DataTable userDefData; 
     userDefData = ..... (data from Database.) 

      userDefDiv.Visible = true; 
      userDefRepeater.DataSource = userDefData; 
      userDefRepeater.DataBind(); 
} 

linkbutton के लिए कोड:

protected void linkButton_Click(object sender, EventArgs e) 
{ 
    createUserDef(); 

    Label2.Visible = true; 
    foreach (RepeaterItem item in userDefRepeater.Items) 
    { 
     TextBox box = (TextBox)item.FindControl("TextBox1"); 
     string b = box.Text; 
     Label2.Text += b + " . "; 
    } 
} 

आप मैं क्लिक दौरान एक बार फिर से पुनरावर्तक बनाने को देखने के रूप में। लेकिन केवल एक चीज जिसे मैं लेबल 2 में पढ़ सकता हूं। प्रत्येक टेक्स्टबॉक्स के लिए डॉट पर "।" की संख्या है। लेकिन टेक्स्टबॉक्स से टेक्स्ट खाली है .. मैं क्या गलत कर रहा हूं ??

पढ़ने के लिए धन्यवाद! मैटिस

समाधान:

  1. पाठ बॉक्स & पुनरावर्तक को EnableVIewState जोड़ने = "true"।

  2. मूल्य प्राप्त करने से पहले कॉल डेटा बाइंड() कॉल न करें।

धन्यवाद!

उत्तर

4

आप linkbuttons एक पुनरावर्तक

+0

वहाँ पुनरावर्तक में कोई linkbutton है में ठीक से काम करने के लिए 'सही' के लिए EnableViewState सेट करना होगा। लिंकबटन उपयोगकर्ता डीफडिव पैनल के बाहर है। – Easyrider

+1

ओह, मैं देखता हूं - मुझे क्लिक विधि नाम से बेवकूफ़ बना दिया गया था। वैसे भी, वही जवाब काम करना चाहिए। पुनरावर्तक के भीतर टेक्स्ट बॉक्स के मान एक Poastback पर उपलब्ध नहीं होंगे जब तक कि EnableViewState = true नहीं। – Ray

+0

यह काम नहीं करता है। – Easyrider

संबंधित मुद्दे