2011-09-14 22 views
7

मुझे ग्रिडव्यू का चयनित सूचकांक मिल सकता है लेकिन मैं ग्रिड के अंदर मौजूद वास्तविक डेटा प्राप्त करना चाहता हूं। मैं ग्रिड में एक पंक्ति का चयन करना चाहता हूं और "क्लाइंट आईडी" कॉलम के वास्तविक डेटा मान तक पहुंचने में सक्षम हूं। ग्रिड ठीक काम कर रहा है और मैं चयनित इंडेक्स चेंजेड ईवेंट तक पहुंचने में सक्षम हूं। मैं ग्रिड में प्रदर्शित जानकारी प्राप्त करने का कोई तरीका खोजने के लिए कोई भाग्य नहीं कर रहा हूं। किसी भी तरह की सहायता का स्वागत किया जाएगा।टेलीरिक चयनित आईडी प्राप्त कर रहा है (चयनित आइटम से रैड्रिड से डेटा प्राप्त करें)

फिर से, मुझे कोडबेंड के ग्रिड फॉर्म में प्रदर्शित सभी डेटा तक पहुंच प्राप्त करने की आवश्यकता है।

+0

http://stackoverflow.com/questions/33822075/cannot-identify-selected -page-in-telerik-grid-i-need-select-page-to-be-underl मुझे इस – Sachin

+0

में सहायता करें http://stackoverflow.com/questions/33822075/cannot-identify-selected-page-in-telerik -grid-i-need-Selected-page-to-be-underl – Sachin

उत्तर

14

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

<telerik:RadGrid ID="RadGrid1" runat="server" ...> 
    <MasterTableView DataKeyNames="Column1, Column2, Column3" ...> 
     ... 
    </MasterTableView> 
</telerik> 

एक बार डेटा कुंजी मार्कअप में सौंपा गया है, तो आप उन्हें में पंक्ति तक पहुंच सकते हैं कोड-पीछे, या SelectedValues संपत्ति का उपयोग कर।

if (RadGrid1.SelectedItems.Count > 0) 
{ 
    //access a string value 
    string column1 = RadGrid1.SelectedValues["Column1"].ToString(); 

    //access an integer value 
    int column2 = (int)RadGrid1.SelectedValues["Column2"]; 
} 
+0

@ जोनाथन ओ: जेम्स के उत्तर में जोड़ने के लिए: यदि आपको किसी विशेष पंक्ति के लिए ग्रिड में प्रदर्शित होने वाले सभी डेटा तक पहुंच की आवश्यकता है ; आपको मार्कअप में डेटाकी के रूप में सूचीबद्ध प्रत्येक कॉलम की आवश्यकता होगी। या ... बस उस विशेष आइटम के लिए आईडी सूचीबद्ध करें और अपने डेटा स्टोर से पूछें। – Icarus

+0

जब आप ऐसा करते हैं, चर कॉलम 1 में क्या है? यह उस कॉलम में डेटा कैसे प्राप्त करता है? मदद के लिए बहुत बहुत धन्यवाद। – joncodo

+0

तो मेरे पास मेरे मार्कअप में और मेरे codebehind में DataKeyNames = "क्लाइंट आईडी, लिंग, पहला नाम" है ... var column = rgSearchResults.SelectedValues ​​["ClientID"]। ToString ;?? यह मेरे लिए काम नहीं कर रहा है। त्रुटि कहती है "ऑब्जेक्ट रेफरी obj के उदाहरण पर सेट नहीं है" – joncodo

1

आप इस तरह यह कर सकता है:

 ` foreach (GridDataItem item in RadGrid1.MasterTableView.Items){ 
       if (item.selected == true){ 
       string mydata = item["ColumnName"].Text; 
        } 
        } 
     ` 

मैं सुझाव है कि आप इस साइट http://www.telerik.com/help/aspnet/grid/grdaccessingcellsandrows.html का दस्तावेज़ पढ़ें; यह निश्चित रूप से टेलीरिक घटकों के साथ आपकी मदद करेगा।

+1

-1 चयनित आइटम ढूंढने या चयनित मान प्राप्त करने का यह एक अच्छा तरीका नहीं है। आपको मान प्राप्त करने के लिए डेटा कुंजियों का उपयोग करना चाहिए, और आप चयनित आइटम प्राप्त करने के लिए 'RadGrid1.SelectedItems' का उपयोग कर सकते हैं। मेरा सुझाव है कि आप कुछ और दस्तावेज पढ़ लें। –

0

डेटाकेज़ का उपयोग James Johnson के रूप में किया गया है। आप DataItemGridDataItem की संपत्ति SelectedIndexChanged ईवेंट में नहीं पहुंच सकते हैं। यह शून्य होगा। Telerik documentation के अनुसार "डेटाइटम ऑब्जेक्ट केवल तभी उपलब्ध होता है जब ग्रिड डेटा से बंधे होते हैं।"

जब DateItem, उपलब्ध है के रूप में ItemCreated घटना में, आप अपने मूल डेटा प्रकार MyType करने के लिए एक डाली कर सकता है:

private void RadGrid_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e) 
{ 
    if ((e.Item is GridDataItem)) { 
     GridDataItem gridDataItem = (GridDataItem)e.Item; 
     MyType dataItem = (MyType)gridDataItem.DataItem; 
    } 
} 
+1

मुझे लगता है कि यह नाव को याद करता है। ओपी जानना चाहता है कि ग्रिड में 'चयनित' आइटम से डेटा कैसे प्राप्त करें। फिर, यह डेटा कुंजी के लिए क्या है। –

+0

हाँ, आप सही हैं। मैंने तदनुसार अपना जवाब सही किया। – mika

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