我的DataGridView上有这些成员。
private DataTable _dataTable = new DataTable();
public DataTable DataTable {
get { return _dataTable; }
set {
_dataTable = value;
int rowIndex = -1;
//want to preserve the location where the datagridview is scrolled to
if (this.Rows.Coun
我的DataGridView的DataSource绑定到DataView。DataView等于我的dtBills DataTable。就像这样:
Dim View As New DataView
View.Table = DataSet1.Tables("dtBills")
dgvBills.DataSource = View
在这个DataGridView中有多个列。其中一个特别有字符串和整数作为信息。当我单击DataGridView列标题对该列进行排序时,它将排序为字符串,类似于左边的列:
'Curr Col >>> ' Wanted
我有一个带有文本框的winform,一个datagridview控件和一个提交按钮,它将数据从文本框发送到sql数据库表,并在datatable中将数据显示到datagridview中。
现在,我希望当按下submit按钮时,将刷新datagridview并根据指定的列进行排序,但这些列直接显示在sql服务器表中,而不是在visual studio IDE中的datagridview控件的属性中单独指定。
那么我该怎么做呢?当我这样做的时候:
DataGridViewColumn d = new DataGridViewColumn();
d.Name = "ItemID";
我需要些帮助。我有一个自定义对象列表,我需要对其进行动态过滤和排序。
这个列表是我的datagridview的数据源。
我想在datagridview.columnHeaderMouseClick事件发生时进行排序,将列名动态传递给where子句。
我有这样的东西:
Private sub DatagridView1_columnHeaderMouseClick (sender As Object, e As DataGridViewCellMouseEventArgs) Handlers DataGridView.ColumnHeaderMouseClick
'
当我将List<MyClass>分配给DataSource of a DataGridView时,当我单击列标头时,什么都不会发生,排序也不起作用;但是如果我使用DataTable作为数据源,那么当单击标头时,排序工作得很完美。
问题是:应该使用哪种集合类型在DataGridView中启用排序,就像我单击列标题时它与DataTable一样?