2009-05-10 9 views
0

J'ai trois colonnes dans mon datagridview .One est un texte, on est Combo et l'autre est un texte ... Je ne veux pas utiliser la source de données d'ajouter des valeurs sur la cellule comme datagridview. Rangées []. Cells []. Value. Aidez-moi comment je peux le faire? Ma base de données ont plusieurs colonnes ... Comment ajouter de la valeur de la colonne dynamique ....Ajout colonne Valeur Dynamiquement à un datagridview

+0

postez votre tentative de code s'il vous plaît ... –

Répondre

1

Je devais faire le même genre de chose exacte ... voici comment vous ajoutez une colonne.

If Not IsPostBack Then <br> 

     Dim field As New TemplateField 
     field.HeaderText = "Name of Column" 
     Dim col As DataControlField = field 
     GridView.Columns.Add(col) 

     End If 

** Dans le Gridview_rowcreated Sous

e.row.cells(cellnumber from 0 to N).controls.Add(data) 

vous allez devoir créer une connexion et une chaîne de connexion

est un exemple ici ...

Dim Dbconn As SqlConnection 
Dim Dbcmd As SqlCommand 

Dbcmd = New Data.SqlClient.SqlCommand() 
Dbcmd.Connection = Dbconn 
Dbcmd.CommandType = Data.CommandType.Text 

Dbcmd.Commandtext = "select * from table" 
dbconn.open() 

//then you need a data reader 

dim dr as sqlclient.sqldatareader 
dr = dbcmd.executereader 
while dr.read 
add each item to a list 
end while 

puis sur le chargement de la page définir votre source de données de la grille à la liste

espérons que cela aide ... si vous avez des questions il suffit de me demander.

0

Je recommande fortement d'utiliser un répéteur au lieu de datagridview et rendre autant de colonnes que vous le souhaitez.

code .aspx

<tr> 
    <asp:Repeater ID="rptDayHeaders" runat="server"> 
     <ItemTemplate> 
      <td> 
       <strong><asp:Literal ID="ltMonthHeader" runat="server"></asp:Literal></strong> 
      </td> 
     </ItemTemplate> 
    </asp:Repeater> 
</tr> 

code .aspx.vb

rptDayHeaders.DataSource = daysList 
rptDayHeaders.DataBind() 

où dayslist doit être un tableau du nombre de colonnes que vous voulez.

Nous avons utilisé la même approche pour générer un diagramme de Gantt complet

0

Essayez quelque chose le long des lignes de

dataGrid.Rows.Add(new object[] { "value1", 42, "value3"}); 
Questions connexes