Datagridview cellvalidating change cell value

You can get the clicked field as follows: After these changes I performed a build on my program.I am now able to sort by clicking the column headers. All Cells; // 设定包括Header和所有单元格的行高自动调整 Data Grid View1. 置Data Grid View的滚动。该图突出这些属性和在这种状态下它们的值。这些属性的读/写除了First Displayed Scrolling Column Hidden Width和Vertical Scrolling Offset属性。 5.6排序 默认情况下,用户可以按一下文字方块的栏标题在Data Grid View控件中的数据。您可以修改特定列Sort Mode属性,允许用户通过其他列类型进行排序时,这样做是有道理的。您还可以通过编程对数据进行排序任何列或多个列。 Data Grid View列有三种排序模式。每个列的排序模式是通过指定的列,它可以设置为以下Data Grid View Column Sort Mode枚举值之一Sort Mode属性。 Data Grid View Column Sort Mode值描述 自动默认为文本框列。除非列标头用于选择,单击列标题此列自动排序,并显示一个指示排序顺序字形的Data Grid View。 Not Sortable默认非文本框列。您可以按该列编程,但是,它不适合排序,所以没有空间为排序标志符号保留。 编程您可以按该列编程和空间是为排序标志符号保留。 您可能要更改的列,默认为Not Sortable如果它包含可以有意义有序值的排序方式。例如,如果你有一个数据库列包含表示项状态的数字,你可以显示一个图像列绑定到数据库列的这些数字对应的图标。然后,您可以改变一个Cell Formatting事件处理程序将图像显示值的数值单元格值。在这种情况下,设置Sort Mode属性,使您的用户自动排序列。自动分拣将使您的用户组项目,具有相同的状态,即使各国所对应的数字没有一个自然顺序。复选框列是另一个例子,自动排序分组,在同一国家的项目有用。 你可以在任何编程方式进行排序列中的值或多个列的Data Grid View,无论Sort Mode设置。编程排序是有用的当您想为排序或当你想实现自己的自定义排序用户界面(UI)。提供自己的排序用户界面是有用的,例如,当您设置了Data Grid View选择模式,使列标题选择。在这种情况下,虽然列标头不能用于排序,你仍然想的标题来显示相应的排序标志符号,所以你会设置Sort Mode属性编程。 列设置为编程排序模式不会自动显示排序标志符号。对于这些列,你必须显示的字形通过设置Data Grid View Column Header Cell. Auto Size Columns Mode = Data Grid View Auto Size Columns Mode. ntal Scroll Bar和Vertical Scroll Bar属性显示。 Scroll Bar控件直接访问这些让你拥有滚动更好的控制。 5.5.3滚动属性 有许多的属性,提供更大的详细程度如何设?? Data Grid View控件 Data Grid View是用于Windows Froms 2.0的新网格控件。它可以取代先前版本中Data Grid控件,它易于使用并高度可定制,支持很多我们的用户需要的特性。 关于本文档: 本文档不准备面面俱到地介绍Data Grid View,而是着眼于深入地介绍一些技术点的高级特性。 本文档按逻辑分为5个章节,首先是结构和特性的概览,其次是内置的列/单元格类型的介绍,再次是数据操作相关的内容,然后是主要特性的综述,最后是最佳实践。 大部分章节含有一个“Q & A”部分,来回答该章节相关的一些常见问题。注意,某些问题会由于知识点的关联性重复出现在多个章节。这些问题、答案及其附带的示例代码都包含在本文档的附录部分。 内容 1 何为Data Grid View.. Excluding rows is useful to avoid a performance penalty when you are working with a large quantity of rows.

On the Event Column Header Mouse Click, add a databinding for the gridview, and send the order by field like a parameter.

Edit: As your datagridview is bound with a linq query, it will not be sorted.

So please go through this link which explains how to create a sortable binding list and to then feed it as datasource to datagridview. I've used this very successfully with the Data Grid View.

You can customize sizing behaviors when working with derived Data Grid View cell, row, and column types by overriding the Data Grid View Cell. The protected resizing method overloads are designed to work in pairs to achieve an ideal cell height-to-width ratio, avoiding overly wide or tall cells.

For example, you might programmatically resize all columns immediately after loading data, or you might programmatically resize a specific row after a particular cell value has been modified. Get Preferred Width() methods or by calling protected resizing method overloads in a derived Data Grid View control.