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

 

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

Πως μπορώ να δημιουργήσω δυναμικά ενα GridView ;

Îåêßíçóå áðü ôï ìÝëïò nicksop. Τελευταία δημοσίευση από το μέλος nicksop στις 14-03-2006, 15:45. Υπάρχουν 1 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  10-03-2006, 19:00 10568

    Umbrella [um] Πως μπορώ να δημιουργήσω δυναμικά ενα GridView ;

    Θα ήθελα να φίαξω δημιουργήσω  δυναμικά ενα GridView με DataBound Columns χωρις να χρησιμοποιοησω το design

    π.χ.

    Dim field As New TemplateField()

    field.HeaderText = "EmployeeId"

    GridView1.Columns.Add(field)

    θα βοήθουσε οποιαδηποτε ιδέα με κώδικα!!

    Ευχαριστω!

  •  14-03-2006, 15:45 10639 σε απάντηση της 10568

    Απ: Πως μπορώ να δημιουργήσω δυναμικά ενα GridView ;

    Public Class DataGridTemplate

    Implements ITemplate

    Private columnName As String

    Private ColumnType As String

    Private TemplateType As ListItemType

    Private WithEvents txt As TextBox

    Private WithEvents btn As Button





    ' CONSTRUCTOR



    Public Sub New(ByVal type As ListItemType, ByVal ColName As String, ByVal ColType As String)

    TemplateType = type

    Me.columnName = ColName

    Me.ColumnType = ColType

    End Sub



    Private Sub InstantiateIn(ByVal container As Control) Implements ITemplate.InstantiateIn



    txt = New TextBox

    btn = New Button



    Select Case TemplateType



    Case ListItemType.Header



    Case ListItemType.Item, ListItemType.AlternatingItem

    txt.ID = "txtfield"

    AddHandler container.DataBinding, AddressOf BindDataCtrl

    container.Controls.Add(txt)



    Case ListItemType.Footer

    btn.Text = "Αποθηκευση"

    ' btn.ButtonType = ButtonColumnType.PushButton

    container.Controls.Add(btn)



    End Select



    ' AddHandler txt.TextChanged, AddressOf txtField_TextChanged





    End Sub



    Private Sub BindDataCtrl(ByVal sender As Object, ByVal e As EventArgs) Handles txt.DataBinding

    Dim container As DataGridItem = CType(txt.NamingContainer, DataGridItem)

    Dim str As String = (CType(container.DataItem, DataRowView))(columnName).ToString()



    txt.Text = DataBinder.Eval(container.DataItem, columnName)





    End Sub



    Πισω στο κωδικα απλως γραφεις :

    Dim tc As New TemplateColumn

    tc.ItemTemplate = New DataGridTemplate(ListItemType.Item, "Column1", "String")

    tc.HeaderText = "Column1"

    tc.HeaderStyle.Width = 100

    DataGrid.Columns.Add(tc)

    DataBind()
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems