Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Απ: findcontrol inside a form template

  •  28-02-2012, 10:46

    Απ: findcontrol inside a form template

    tmarkou:
    tmarkou:
    tmarkou:
    Σε  ευχαριστώ πολύ για την απάντηση.

    Να σαι καλά.





    Σε συνέχεια του προηγούμενου εχω τα εξής :

    Χρησιμοποιώ αυτη την ρουτινα για να γεμίσω ενα radcombobox στο οποίο μπορώ να κανω πολλαπλές επιλογές
    μιας και καθε επιλογή έχει και checkbox.

    Protected Sub RadComboBox1_ItemsRequested(ByVal o As Object, ByVal e As RadComboBoxItemsRequestedEventArgs)

            Dim data As DataTable = GetData(e.Text)
            Dim comboBox As RadComboBox = DirectCast(o, RadComboBox)
            ' Clear the default Item that has been re-created from ViewState at this point.
            comboBox.Items.Clear()

            Dim text As String = e.Text

            If text <> "" Then
                If Len(text) >= 3 Then

                    Dim rows As DataRow() = data.[Select]("newprd LIKE '" + "%" + text + "%'")

                    Dim itemsPerRequest As Integer = 20
                    Dim itemOffset As Integer = e.NumberOfItems
                    Dim endOffset As Integer = itemOffset + itemsPerRequest
                    If endOffset > rows.Length Then
                        endOffset = rows.Length
                    End If

                    Dim i As Integer = itemOffset
                    While i < endOffset
                        comboBox.Items.Add(New RadComboBoxItem(rows(i)("newprd").ToString()))
                        System.Math.Max(System.Threading.Interlocked.Increment(i), i - 1)
                    End While

                    e.Message = [String].Format("Items <b>1</b>-<b>{0}</b> out of <b>{1}</b>", endOffset, rows.Length)

                End If
            End If
        End Sub


        Private Function GetData(ByVal text As String) As DataTable

            If text <> "" Then

                If Len(text) >= 3 Then

                    Dim seq As String = " SELECT prdcode,prdtext " + _
                                        " FROM Products " + _
                                        " where " + _
                                        " prdtext like '" + "%" + Trim(text) + "%" + "'" + _
                                        " order by prdcode "

                    Dim adapter As New SqlDataAdapter(seq, ConfigurationManager.ConnectionStrings("P2OPubConnectionString").ConnectionString)

                    Dim data As New DataTable()
                    adapter.Fill(data)

                    Return data

                End If

            End If

        End Function

    Στην aspx εχω το radcombobox μέσα σε form template ως εξής :

                    <FormTemplate>
                                        <td class="style29">
                                            <telerik:RadComboBox
                                                ID="RadComboBox1" runat="server" Filter="Contains" ItemsPerRequest="20" EnableVirtualScrolling="true" CheckBoxes="true"
                                                Width="350px" Height="200px"  Font-Size="X-Small" Font-Names="verdana"
                                                ShowMoreResultsBox="True" EnableLoadOnDemand="True"
                                                OnItemsRequested="RadComboBox1_ItemsRequested"
                                                style="margin: 20px auto; display:block !important;" />
                   
                                            <asp:Button ID="Button1" runat="server" Text="Get Checked Items" CssClass="qsfButtonBigger" commandname="Button1Action" />
                                                <br />
                                            <asp:Label ID="itemsClientSide" runat="server" BorderStyle="None" CssClass="text" />
                                        </td>
                    <Formtemplate />

    Στο code behind στο commandname = "Button1Action" πρεπει να δημιουργηθει η ρουτίνα που θα διαβάσει τις τιμές από το combobox.


        Protected Sub radKOMPASS_ItemCommand(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles radKOMPASS.ItemCommand
            Select Case e.CommandName

                Case "Button1Action"

                    Dim cb As RadComboBox = e.Item.FindControl("RadComboBox1")
           
            --------------------------------------------------------------

            End Select
        End Sub


    Αυτό που προσπαθώ είναι να φτιάξω μια ρουτίνα (φαντάζομαι loop) που να διαβάζει τις επιλογές που έχω κλικαρει.

    Σας  παρακαλώ για βοήθεια.

    Ευχαριστώ εκ των προτέρων.





    Επειδή βλέπω ότι κανένας δεν απάντησε στο ερωτημα μου και ισως να φταιω εγω σε αυτό, θα ήθελα να κάνω clear ότι αυτό που ζητώ είναι
    ο τροπος που θα διαβασω τις τιμές που θα έχει το radcombobox με τα checkboxes. 

        Protected Sub radKOMPASS_ItemCommand(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles radKOMPASS.ItemCommand
            Select Case e.CommandName

                Case "Button1Action"

                    Dim cb As RadComboBox = e.Item.FindControl("RadComboBox1")
           
                       [κώδικας για radcombobox]

            End Select
        End Sub


    Σας ευχαριστώ και πάλι εκ των προτέρων.




    Καλημέρα.

    Δεν υπάρχει κάποιος, please να με βοηθήσει με το παραπάνω πρόβλημα ???

    Thanks.

     


    Δημοσίευση στην κατηγορία:
Δείτε όλες τις δημοσιεύσεις της Θεματική Ενότητας
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems