एक दृष्टिकोण यह है कि अद्यतनों को अधिक अजाक्सी तरीके से अनुमति दी जाए, जैसा कि अरिस्टोस चर्चा करता है। यह आम तौर पर एक अधिक उपयोगकर्ता के अनुकूल दृष्टिकोण माना जाता है और निश्चित रूप से एक अच्छा उपयोगकर्ता अनुभव प्रदान करेगा, लेकिन इसके लिए jQuery और जावास्क्रिप्ट के साथ परिचित होना आवश्यक है और क्लाइंट और सर्वर के बीच की बातचीत आपके दृष्टिकोण से थोड़ी अधिक जटिल है।
यदि आप वेब नियंत्रण प्रतिमान का उपयोग करना जारी रखना चाहते हैं, तो "पहुंचे पर" और "पर छोड़ता है" फ़ील्ड को टेम्पलेट फ़ील्ड बनाने पर विचार करें। ItemTemplate में आप उस टेक्स्ट को प्रदर्शित करना जारी रख सकते हैं जिसे आप डेटाबेस में जोड़ते हैं, लेकिन आप EditItemTemplate में एक GridView डालेंगे। यह ग्रिड व्यू डेटा स्रोत नियंत्रण (एडिटइटम टेम्पलेट में भी) से जुड़ा हो सकता है और संपादन का समर्थन करने के लिए कॉन्फ़िगर किया जा सकता है। यदि आप प्रोग्रामेटिक रूप से बाध्यकारी डेटा हैं (यानी, आप नहीं हैं डेटा स्रोत नियंत्रण का उपयोग करके) तो जब भी मूल पंक्ति संपादन योग्य हो जाती है, तो आपको डेटा को बच्चे ग्रिड व्यू से जोड़ना होगा। यह इस तरह मार्कअप का उपयोग करके घोषणात्मक रूप से किया जा सकता है:
<asp:TemplateField ...>
<EditItemTemplate>
<asp:GridView runat="server" id="gvChild" DataSource='<%# SomeFunction() %>' ...>
...
</asp:GridView>
</EditItemTemplate>
</asp:TemplateField>
यहां, SomeFunction
आपके कोड-बैक क्लास (आमतौर पर) में एक फ़ंक्शन होगा जो ग्रिड से जुड़ने के लिए डेटा लौटाता है।
वैकल्पिक रूप से, आप पैरेंट GridView के RowDataBound
के माध्यम से डेटा को बच्चे GridView से प्रोग्रामेटिक रूप से बाँध सकते हैं आयोजन प्रबंधकर्ता। अर्थात्, आप यह देखने के लिए जांच करेंगे कि क्या आप संपादित की जा रही पंक्ति से निपट रहे हैं (अर्थात, यदि e.Row.RowIndex = ParentGridViewID.EditIndex
) यदि ऐसा है, तो आप e.Row.FindControl("ChildGridViewID")
का उपयोग करके चाइल्ड ग्रिड व्यू को प्रोग्रामेटिक रूप से संदर्भित कर सकते हैं। और फिर उसका DataSource
सेट करें संपत्ति और उसके DataBind
. पर कॉल करें विधि।
जब कोई उपयोगकर्ता पैरेंट ग्रिड के लिए संपादित करें बटन पर क्लिक करता है, तो "पर पहुंचें" और "यहां छोड़ें" सेल ग्रिड के रूप में दिखाई देंगे, जिसमें अलग-अलग समय को संशोधित करने के लिए स्वयं के संपादन बटन होंगे। वैकल्पिक रूप से, आप आइटम टेम्पलेट में बच्चे को संपादन योग्य ग्रिड व्यू डाल सकते हैं यदि आप उपयोगकर्ताओं को "पहुंचने" और "छोड़ने" समय को संपादित करने देना चाहते हैं, तो उपयोगकर्ता को पहले मूल रिकॉर्ड को संपादित करने के लिए चुनने की आवश्यकता नहीं है।