2010-09-09 8 views
8

के लिए कमांडआईटैम टेम्पलेट में नियंत्रण कैसे प्राप्त करें मैं टेलरिक से रेडग्रिड का उपयोग कमांडइटम में तीन लिंकबटन नियंत्रण के साथ कर रहा हूं, और मैं कोड को पीछे कोड पर स्विच स्टेटमेंट का उपयोग करके छिपाना या दिखाना चाहता हूं।रैडग्रिड

<CommandItemTemplate> 
    <LinkButton runat="server" ID="approveAllLink" Text="Approve All" > 
    </LinkButton> 
    <LinkButton runat="server" ID="approveLink" Text="Approve" > 
    </LinkButton> 
    <LinkButton runat="server" ID="rejectLink" Text="Reject" > 
    </LinkButton> 
</CommandItemTemplate> 

क्या इस मामले को हल किया गया है?

+0

क्यों एक समुदाय विकी? –

उत्तर

13

इस बारे में क्या?

GridItem cmdItem = RadGrid1.MasterTableView.GetItems(GridItemType.CommandItem)[0]; 
LinkButton approveAllLink = cmdItem.FindControl("approveAllLink") as LinkButton; 
LinkButton approveLink = cmdItem.FindControl("approveLink") as LinkButton; 
LinkButton rejectLink= cmdItem.FindControl("rejectLink") as LinkButton; 

// Your switch logic here 
+1

मैं संस्करण v2013.1.220.45 उपयोग कर रहा हूँ और यह मेरे लिए काम नहीं किया: सरणी ऊपर कोड की पहली पंक्ति के लिए खाली है - मैं एक कस्टम 'CommandItemTemplate' जो समस्या है, यकीन है कि नहीं हो सकता है का उपयोग कर रहा । मेरी 'कमांडइटम डिस्प्ले' सेटिंग्स 'टॉप एंडबॉटम' है। – PeterX

+0

@PeterX निश्चित रूप से RadGrid1_ItemDataBound घटना में सरणी शून्य नहीं है। –

+0

@PeterX 'इस टेलीरिक पोस्ट] [http://www.telerik.com/community/forums/aspnet/grid/ में सुझाए गए अनुसार' ग्रिड कॉमांड इटिम 'पर 'FindControl()' का उपयोग करके 'RadGrid_ItemCreated' हैंडलर में नियंत्रण पुनर्प्राप्त करने का प्रयास करें। find-control-in-commanditemtemplate.aspx # 668918) – Boyan

3

सुनिश्चित करें कि आपके पास MasterTableView की CommandItemDisplay प्रॉपर्टी है जो किसी के अलावा किसी मान से अलग है। अन्यथा GetItems विधि से लौटाए गए कमांड आइटम सरणी खाली हो जाएगी।

2

छिपाएं या ग्रिड के ItemCreated घटना के दौरान अपने CommandItem में नियंत्रण दिखाने:

protected void RadGrid1_ItemCreated(object sender, GridItemEventArgs e) 
    { 
     if (e.Item.ItemType == GridItemType.CommandItem) 
     { 
      var approveAllLink = (LinkButton) e.Item.FindControl("approveAllLink"); 
      var approveLink = (LinkButton)e.Item.FindControl("approveLink"); 
      var rejectLink = (LinkButton)e.Item.FindControl("rejectLink"); 

      // Your switch logic here 
     } 
    } 
संबंधित मुद्दे