Я связываю представление таблицы данных, используя следующий запрос linq к структуре платформы, используя следующий код.
private void EquipmentFinder_Load(object sender, EventArgs e)
{
SetupCategories();
productgridview.RowTemplate.Height = 130;
var products = from prods in axe.product1
select new
{
productid = prods.product_Id, //0
productnam = prods.product_Name, //1
productimage = prods.product_Image, //2
productprice = prods.product_Price,//3
productdescr = prods.product_Description, //4
};
productbindingsource.DataSource = products;
productgridview.DataSource = productbindingsource;
productgridview.Columns[0].Visible = false;
productgridview.Columns[4].Visible = false;
}
У меня есть столбцы id продукта, изображение продукта, название продукта, описание продукта, цена продукта.
Я сделал некоторые из столбцов невидимыми для целей клиента.
Теперь я хочу отсортировать столбцы, нажав на заголовок столбца ....
Примечание: здесь product.image хранится в базе данных как байты массивов ....
Я не знаю, как сравнивать байты и сортировать их так ...
Может ли кто-нибудь помочь с этим ......
большое спасибо ...
ИЗМЕНЕННЫЙ КОД:
private void productgridview_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
DataGridViewColumn newcolumn = productgridview.Columns.GetColumnCount(DataGridViewElementStates.Selected) == 1 ? productgridview.SelectedColumns[0] : null;
DataGridViewColumn oldColumn = productgridview.SortedColumn;
ListSortDirection direction;
if (oldColumn != null)
{
// Sort the same column again, reversing the SortOrder.
if (oldColumn == newcolumn &&
productgridview.SortOrder == SortOrder.Ascending)
{
direction = ListSortDirection.Descending;
}
else
{
// Sort a new column and remove the old SortGlyph.
direction = ListSortDirection.Ascending;
oldColumn.HeaderCell.SortGlyphDirection = SortOrder.None;
}
}
else
{
direction = ListSortDirection.Ascending;
}
productgridview.Sort(newcolumn, direction);
newcolumn.HeaderCell.SortGlyphDirection =
direction == ListSortDirection.Ascending ?
SortOrder.Ascending : SortOrder.Descending;
}
получил ошибку: Аргумент NUll Исключение было обработано ..
Value cannot be null.
Parameter name: dataGridViewColumn
поможет ли кто-нибудь в этом ....