DropDownList into Table

Συζητήσεις για τις γλώσσες του dot Net και για του Visual Studio της Microsoft

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
eagleman
Δημοσιεύσεις: 30
Εγγραφή: 14 Δεκ 2005 19:32

DropDownList into Table

Δημοσίευση από eagleman » 06 Μάιος 2007 19:21

Καλησπέρα σε όλους, αυτο που θέλω να κάνω είναι να φτιάξω έναν πίνακα και σε κάθε γραμμή του να έχω ένα ID, και 3 dropdownlists. ο χρήστης θα επιλέγει από αυτά ότι του αρέσει και στη συνέχεια εγώ θα αποθηκεύω στην Βάση τις επιλογέσ του.

αυτό που δεν μπορώ να κάνω είναι να δημιουργήσω με κώδικα (ή ακόμη και να καλέσω ένα dropdwonlist από τα έτοιμα) μέσα στον πίνακά μου.

Κώδικας: Επιλογή όλων

        '"Session["myDatatable"] = myDt;" is important to ensure we can 
        'add new data continually until the page be closed.
        If Me.IsPostBack = False Then
            myDt = New DataTable()
            myDt = CreateDataTable()
            Session("myDatatable") = myDt

            Me.GridView1.DataSource = (CType(Session("myDatatable"), DataTable)).DefaultView
            Me.GridView1.DataBind()
        End If

        CreateDataTable()
        AddDataToTable(Me.ddlcells.SelectedValue.Trim(), CType(Session("myDatatable"), DataTable)) 

        Me.GridView1.DataSource = CType(Session("myDatatable"), DataTable).DefaultView
        Me.GridView1.DataBind()

Κώδικας: Επιλογή όλων

 'Create datatable structure.
    Private Function CreateDataTable() As DataTable

        Dim myDataTable As DataTable = New DataTable()
        Dim myDataColumn As DataColumn

        myDataColumn = New DataColumn()
        myDataColumn.DataType = Type.GetType("System.String")
        myDataColumn.ColumnName = "Cell"
        myDataTable.Columns.Add(myDataColumn)

        myDataColumn = New DataColumn()
        myDataColumn.DataType = Type.GetType("System.String")
        myDataColumn.ColumnName = "Activity"
        myDataTable.Columns.Add(myDataColumn)

        myDataColumn = New DataColumn()
        myDataColumn.DataType = Type.GetType("System.String")
        myDataColumn.ColumnName = "Object Type"
        myDataTable.Columns.Add(myDataColumn)

        myDataColumn = New DataColumn()
        myDataColumn.DataType = Type.GetType("System.String")
        myDataColumn.ColumnName = "Final Cell"
        myDataTable.Columns.Add(myDataColumn)

        Return myDataTable

    End Function

    'Insert data into datatable.
    Private Sub AddDataToTable(ByVal ddlcells As String, ByVal myTable As DataTable)
  
        Dim row As DataRow
        Dim j As Int16

        j = 1

        While &#40;j <= 12&#41; 'να εχει 12 γραμμεσ ο πινακασ μου
            row = myTable.NewRow&#40;&#41;

            row&#40;"Cell"&#41; = j
            row&#40;"Activity"&#41; = 55&#91;b&#93;'εδω θέλω να φορτώνει το dropdownlist&#91;/b&#93;
            row&#40;"Object Type"&#41; = 66&#91;b&#93;'εδω θέλω να φορτώνει το dropdownlist&#91;/b&#93;
            row&#40;"Final Cell"&#41; = 55&#91;b&#93;'εδω θέλω να φορτώνει το dropdownlist&#91;/b&#93;

            j = j + 1

            myTable.Rows.Add&#40;row&#41;
        End While

    End Sub
στον πίνακα που μου εμφανίζει γράφει System.Web.UI.WebControls.DropDownList εκεί που καλώ το DropDownList μου. όπως φαίνεται και στην εικόνα...


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

Ευχαριστώ, Γιάννης
Συνημμένα
table.JPG

eagleman
Δημοσιεύσεις: 30
Εγγραφή: 14 Δεκ 2005 19:32

DropDownList into Table

Δημοσίευση από eagleman » 07 Μάιος 2007 11:23

κανείς??? :cry:

Άβαταρ μέλους
entrodus
Δημοσιεύσεις: 83
Εγγραφή: 18 Σεπ 2006 15:27

DropDownList into Table

Δημοσίευση από entrodus » 07 Μάιος 2007 13:25

Τα πεδία σου θα είναι δυναμικά?
Γιατί από τον Designer θα μπορούσες να χρησιμοποιήσεις templates και να βάλεις ότι γουστάρεις. (ενώ τώρα με τα columns έχεις περιορισμούς στο τι μπορείς να βάλεις)

eagleman
Δημοσιεύσεις: 30
Εγγραφή: 14 Δεκ 2005 19:32

DropDownList into Table

Δημοσίευση από eagleman » 07 Μάιος 2007 13:45

με templates πως δηλαδή? εχεις να μου προτεινεις κάτι??

θέλω μέσα σε κάθε ένα πεδίο του πίνακα (οι γραμμές του οποίου δεν είναι σταθερές, γιαυτό τον δημιουργώ κάθε φορά..) να έχει είτε κάποιο button είτε κάποιο dropdownlist. ώστε να μου μπορώ να επιλέγω τι θέλω να κάνω με το κάθε κελί και στη συνέχεια με τισ συντεταγμένεσ του να κάνω Insert στι Βάση τις επιλογές του χρήστη...

σε ευχαριστώ που απάντησες..

Άβαταρ μέλους
entrodus
Δημοσιεύσεις: 83
Εγγραφή: 18 Σεπ 2006 15:27

DropDownList into Table

Δημοσίευση από entrodus » 07 Μάιος 2007 14:08

Παρακάτω έχω ένα κομμάτι κώδικα που προσθέτει δυναμικά ένα hyperlink.
Δοκίμασε να το πειράξεις για DropDown, δεν είμαι σίγουρος βέβαια οτι θα σου δουλέψει, ούτε και οτι είναι η βέλτιστη τεχνική.

Κώδικας: Επιλογή όλων

	protected void GridView1_RowDataBound&#40;object sender, GridViewRowEventArgs e&#41;
	&#123;
		GridViewRow curRow = e.Row;
		HyperLink HprLink;

		if &#40;curRow.RowType == DataControlRowType.DataRow&#41;
		&#123;
			HprLink = new HyperLink&#40;&#41;;
			HprLink.Text = "Δυναμικό control";
			curRow.Cells&#91;0&#93;.Controls.Add&#40;HprLink&#41;;
		&#125;

	&#125;
PS. Αα.. είναι σε c#, αλλά δεν θα δυσκολευτείς φαντάζομαι να το μεταφράσεις σε vb.net

Απάντηση

Επιστροφή στο “dot Net και Visual Studio”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες