Динамическое добавление значения столбца в DataGridview - PullRequest
0 голосов
/ 10 мая 2009

У меня есть три столбца в моем представлении данных. Один - текст, один - комбинированный, а другой - текст ... Я не хочу использовать источник данных, хочу добавить значения в ячейку, такие как datagridview.Rows []. Cell [] .значение. Помогите мне, как я могу это сделать? В моей базе данных есть несколько столбцов ... Как динамически добавить значение столбца ....

Ответы [ 3 ]

1 голос
/ 11 мая 2009

Мне просто нужно было сделать то же самое ... вот как вы добавляете столбец.

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

** В Gridview_rowcreated Sub

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

вам нужно будет создать соединение и строку соединения

вот пример ...

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

затем при загрузке страницы установите свой источник данных сетки в список

надеюсь, это поможет ... если у вас есть какие-либо вопросы, просто спросите меня.

0 голосов
/ 10 мая 2009

Попробуйте что-нибудь вроде

dataGrid.Rows.Add(new object[] { "value1", 42, "value3"});
0 голосов
/ 10 мая 2009

Я бы настоятельно рекомендовал использовать Repeater вместо datagridview и отображать столько столбцов, сколько вы хотите.

.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>

.aspx.vb код

rptDayHeaders.DataSource = daysList
rptDayHeaders.DataBind()

где dayslist должен быть массивом нужного вам количества столбцов.

Мы использовали тот же подход для генерации полной диаграммы Ганта

...