2012-06-13 12 views
18

में रनटाइम पर नाम से एक ग्रिड व्यू कॉलम छुपाएं क्या रनटाइम पर ग्रिड व्यू कॉलम को नाम से छिपाना/छिपाना संभव है?एएसपी.Net

gridReviews.Columns["Name"].Visible = false; 

यह करने के लिए सबसे अच्छा तरीका क्या है:

gridReviews.Columns[4].Visible = false; 

हालांकि मैं निम्न कार्य करना चाहते हैं:

मैं निम्नलिखित की तरह सूचकांक के माध्यम से यह कर सकते हैं? आप डेटा का उपयोग कर सकते हैं अगर

foreach (DataControlField col in gridReviews.Columns) 
     { 
      if (col.HeaderText == "Name") 
      { 
       col.Visible = false; 
      } 
     } 
+0

क्या आप अंतर्निहित डेटा स्रोत में हेडर टेक्स्ट या कॉलम/प्रॉपर्टी नाम का उपयोग करना चाहते हैं? – David

+0

आप एक अच्छा मुद्दा उठाते हैं जो मुझे रोक सकता है। हेडर टेक्स्ट ग्रिड डेटा के आधार पर बदल सकता है, इसलिए मैं इसका उपयोग नहीं कर सकता। हालांकि मुझे जिस कॉलम को छिपाने की ज़रूरत है वह एक टेम्पलेटफिल्ड है जो डेटासोर्स से जुड़ा नहीं है और ऐसा लगता है कि इसमें कोई आईडी नहीं है। – Sun

उत्तर

17

आप इसके लिए निम्नलिखित कोड का उपयोग कर सकते डेटाटेबल (और ऑटो जेनरेट कॉलम = झूठी) के रूप में:

//Make ID column invisible by column name 
gv.Columns[dt.Columns[ID].Ordinal].Visible = false; 
0

आप अप्रत्यक्ष रूप से स्तंभ नाम से gridview उपयोग कर सकते हैं आप gridview बाध्य करने के लिए इस्तेमाल किया और gridview स्तंभ एक ही क्रम में हैं: