如何在datagridview中填充列以供用户选择。 [英] How do I populate column in a datagridview for user to select from.

查看:64
本文介绍了如何在datagridview中填充列以供用户选择。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这个代码可以将学生标记保存到数据库中



For Each Row As DataGridViewRow in dgAssessment.Rows

sqlSTR =更新评估SET CLASSCORE ='&row.Cells(2).Value&',_

&CONV_CS ='&row.Cells(3).Value&', _

&EXAM ='&row.Cells(4).Value&',_

&CONV_EXAM ='&row.Cells(5) ).Value&',_

&OVERALL ='&row.Cells(6).Value&',_

&GRADE = '&row.Cells(7).Value&',_

&REMARKS ='&row.Cells(8).Value&',_

&GRD ='&row.Cells(9).Value&'WHERE ACADEMIC_YEAR ='& txtAcademicYear.Text&'&_

AND STUDENTID ='&row.Cells(1).Value&'AND Term ='&txtTerm.Text&'&_

AND STAGE ='&cboStage.Text&'AND Subject ='&cboSubject.Text&'

ExecuteSQLQuery(sqlSTR)

下一页



并使用此代码填充网格



sqlSTRGRID =SELECT Name ,学生,CLASSCORE,CONV_CS,考试,CONV_EXAM,&_

总体,等级,备注,评估的学术成绩='&txtAcademicYear.Text&'AND STAGE ='& cboStage.Text&'&_

AND St​​udClass ='&cboClass.Text&'AND Term ='&txtTerm.Text&'AND Subject ='&cboSubject。文本&'ORDER BY Name ASC

ExecuteSQLQueryDataGrid(sqlSTRGRID)

如果sqlDTGRID.Rows.Count> 0然后

dgAssessment.DataSource = sqlDTGRID

dgAssessment.Columns(0).HeaderText =Name

dgAssessment.Columns(1)。 HeaderText =学生ID

dgAssessment.Columns(2).HeaderText =Class Score 100%

dgAssessment.Columns(3).HeaderText =Class Score 30 %

dgAssessment.Columns(4).HeaderText =EXAM 100%

dgAssessment.Columns(5).HeaderText =EXAM 70%

dgAssessment.Columns(6).HeaderText =TOTAL 30%+ 70%

dgAssessment.Columns(7).HeaderText =GRADE

dgAssessment .Columns(8).HeaderText =REMARKS

dgAssessment.Columns(9).HeaderText =GRD

结束如果





现在我想用数据填充备注列,以便用户可以从列表中选择每个主题的备注中输入。

另外每一个选中的标记应在保存并从数据库加载数据后显示在备注列中。因此,我希望备注列表现为正常的组合框。

I have this code that saves student marks to the database

For Each row As DataGridViewRow In dgAssessment.Rows
sqlSTR = "UPDATE Assessment SET CLASSCORE ='" & row.Cells(2).Value & "', " _
& "CONV_CS ='" & row.Cells(3).Value & "', " _
& "EXAM ='" & row.Cells(4).Value & "', " _
& "CONV_EXAM ='" & row.Cells(5).Value & "', " _
& "OVERALL ='" & row.Cells(6).Value & "', " _
& "GRADE ='" & row.Cells(7).Value & "', " _
& "REMARKS ='" & row.Cells(8).Value & "', " _
& "GRD ='" & row.Cells(9).Value & "' WHERE ACADEMIC_YEAR = '" & txtAcademicYear.Text & "'" & _
"AND STUDENTID = '" & row.Cells(1).Value & "' AND Term = '" & txtTerm.Text & "'" & _
"AND STAGE = '" & cboStage.Text & "' AND Subject = '" & cboSubject.Text & "'"
ExecuteSQLQuery(sqlSTR)
Next

And also populate the grid with this code

sqlSTRGRID = "SELECT Name, STUDENTID, CLASSCORE, CONV_CS, EXAM, CONV_EXAM," & _
"OVERALL, GRADE, REMARKS, GRD FROM vAssessment WHERE ACADEMIC_YEAR='" & txtAcademicYear.Text & "' AND STAGE='" & cboStage.Text & "'" & _
" AND StudClass='" & cboClass.Text & "' AND Term='" & txtTerm.Text & "' AND Subject='" & cboSubject.Text & "' ORDER BY Name ASC"
ExecuteSQLQueryDataGrid(sqlSTRGRID)
If sqlDTGRID.Rows.Count > 0 Then
dgAssessment.DataSource = sqlDTGRID
dgAssessment.Columns(0).HeaderText = "Name"
dgAssessment.Columns(1).HeaderText = "Student ID"
dgAssessment.Columns(2).HeaderText = "Class Score 100%"
dgAssessment.Columns(3).HeaderText = "Class Score 30%"
dgAssessment.Columns(4).HeaderText = "EXAM 100%"
dgAssessment.Columns(5).HeaderText = "EXAM 70%"
dgAssessment.Columns(6).HeaderText = "TOTAL 30%+70%"
dgAssessment.Columns(7).HeaderText = "GRADE"
dgAssessment.Columns(8).HeaderText = "REMARKS"
dgAssessment.Columns(9).HeaderText = "GRD"
End If


Now I want to populate remarks column with data so that the user can select from a list intead of typing in the remarks for each subject.
Also each remarks selected should display in the remarks column after saving and loading back the data from the database. Thus I want the remarks column to behave as a normal combobox.

推荐答案

因此,通过运行查询并将其绑定到<$ c $来从数据库获取备注c> DataTable 使用 SqlDataAdapter



然后分配 DataTable DataGridView ComboBoxColumn的 DataSource property。



参见示例 - C#中带有DataGridView的ComboBox [ ^ ]
So, get the Remarks from Database by running a query and bind that to a DataTable using SqlDataAdapter.

Then assign the DataTable to the DataGridView ComboBoxColumn's DataSource property.

See example - ComboBox with DataGridView in C#[^]


这篇关于如何在datagridview中填充列以供用户选择。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆