先放置一个隐藏的textbox, 并设置两个变量标记一下:
private bool inteditmode=false;
private bool intupdatemode=false;
..............
.............
//数据排序
private void dataGrid1_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
{
try
{
DataGrid.HitTestInfo hittest=dataGrid1.HitTest(e.X,e.Y);
if(hittest.Type==DataGrid.HitTestType.ColumnHeader)
{
txtedit.Visible=false;
inteditmode=false;
intupdatemode=false;
DataTable datatable =(DataTable)dataGrid1.DataSource;
DataView dataview =datatable.DefaultView;
string columnname=datatable.Columns[hittest.Column].ColumnName;
if(dataview.Sort==columnname)
dataview.Sort=columnname+"DESC";
else
dataview.Sort=columnname;
}