This is a migrated thread and some comments may be shown as answers.

Read values from RadGrid

6 Answers 148 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Michael
Top achievements
Rank 1
Michael asked on 01 Dec 2010, 06:21 PM
I'm attempting to read values from a RadGrid.  I've listed the code below and it works and doesn't produce an error, however, it doesn't read any of the values from the RadGrid.


Protected

 

 

Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click

 

 

 

For Each item As GridDataItem In rgLanguages.Items

 

Dim test As String = item("Language").Text

 

 

 

 

 

 

Next

 

 

 

End Sub

 

6 Answers, 1 is accepted

Sort by
0
Daniel
Telerik team
answered on 02 Dec 2010, 10:47 AM
Hello Michael,

Could you please post your markup here? This way I will be able to find out what is wrong.

In the meantime you can examine the following link:
Accessing cells and rows

Best regards,
Daniel
the Telerik team
Browse the vast support resources we have to jumpstart your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.
0
Michael
Top achievements
Rank 1
answered on 02 Dec 2010, 02:37 PM

<table width="450" border="1" cellspacing="0">
        <tr>
            <td>
                <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
                    <AjaxSettings>
                        <telerik:AjaxSetting AjaxControlID="rgLanguages">
                            <UpdatedControls>
                                <telerik:AjaxUpdatedControl ControlID="rgLanguages" LoadingPanelID="RadAjaxLoadingPanel1" />
                            </UpdatedControls>
                        </telerik:AjaxSetting>
                    </AjaxSettings>
                </telerik:RadAjaxManager>
                <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" Skin="Default">
                </telerik:RadAjaxLoadingPanel>
                <telerik:RadGrid ID="rgLanguages" runat="server" GridLines="None"
                    AutoGenerateColumns="False">

                    <MasterTableView Name="Languages" EditMode="InPlace" CommandItemDisplay="TopAndBottom">
                  
                        <CommandItemTemplate>
                            <asp:Button ID="btnUpdate" runat="server" Text="Update" />
                            <asp:Button ID="btnAdd" runat="server" Text="Add" />
                            <asp:Button ID="btnDelete"  runat="server" Text="Delete" />
                        </CommandItemTemplate>
        
                        <Columns>
                       
                            <telerik:GridCheckBoxColumn HeaderText="Select">
                            </telerik:GridCheckBoxColumn>

                            <telerik:GridBoundColumn HeaderText="Language ID" HeaderButtonType="TextButton"
                                 UniqueName="ID" DataField="ID">
                            </telerik:GridBoundColumn>
                           
                            <telerik:GridBoundColumn HeaderText="Language" HeaderButtonType="TextButton"
                                 UniqueName="Language" DataField="Language">
                            </telerik:GridBoundColumn>
                       
                        </Columns>
                       
                    </MasterTableView>

                </telerik:RadGrid>
            </td>
        </tr>
    </table>



Private Sub rgLanguages_NeedDataSource(ByVal sender As ObjectByVal e As Telerik.Web.UI.GridNeedDataSourceEventArgs) Handles rgLanguages.NeedDataSource
        If Not e.IsFromDetailTable Then
            Dim objLanguages As New C4PL.Languages

            objLanguages.Load(True)

            rgLanguages.DataSource = objLanguages
            rgLanguages.PageSize = objLanguages.Count

            If Not IsPostBack Then
                Dim i As Integer = 0
                While i < rgLanguages.PageSize
                    rgLanguages.EditIndexes.Add(i)
                    System.Math.Max(System.Threading.Interlocked.Increment(i), i - 1)
                End While
            End If
        End If
    End Sub





0
Daniel
Telerik team
answered on 02 Dec 2010, 03:38 PM
Hello Michael,

For your convenience I created a simple project (based on your code-snippets) that demonstrates how to access the cells in RadGrid.

Let me know whether this helps.

Best regards,
Daniel
the Telerik team
Browse the vast support resources we have to jumpstart your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.
0
Michael
Top achievements
Rank 1
answered on 02 Dec 2010, 10:42 PM
Daniel,

Thanks for the help.  It did get me closer to what I'm trying to do.  Is there a way to do this when it's in edit mode?  If every record is setup in edit mode like the demo http://demos.telerik.com/aspnet-ajax/calendar/examples/datepicker/shareddatepicker/defaultcs.aspx?product=grid 
0
Princy
Top achievements
Rank 2
answered on 03 Dec 2010, 06:33 AM
Hello Michael,

Since the control is rendered as TextBox in edit mode, you need to access the TextBox first and then access the value in TextBox like below.

Vb.Net:
Protected Sub Button1_Click(sender As Object, e As EventArgs)
    For Each edititem As GridEditableItem In rgLanguages.MasterTableView.GetItems(GridItemType.EditItem)
        Dim txtbox As TextBox = DirectCast(edititem("Language").Controls(0), TextBox)
        Dim value As String = txtbox.Text
    Next
End Sub

Thanks,
Princy.
0
Michael
Top achievements
Rank 1
answered on 03 Dec 2010, 05:58 PM
Thanks Princy!  That's exactly what I needed. 
Tags
Grid
Asked by
Michael
Top achievements
Rank 1
Answers by
Daniel
Telerik team
Michael
Top achievements
Rank 1
Princy
Top achievements
Rank 2
Share this question
or