このコードを試してみてください、すべてのものを試していますされています(GRIDCONTROLマウスダウンイベントを使用して)
VB.net:
Dim hitInfo = GridView1.CalcHitInfo(e.Location)
If e.Button = Windows.Forms.MouseButtons.Left Then
For Each column As GridColumn In GridView1.Columns
If column.FieldName = hitInfo.Column.FieldName Then
hitInfo.Column.AppearanceCell.BackColor = Color.FromArgb(226, 234, 253)
Else
GridView1.Columns(column.FieldName).AppearanceCell.BackColor = Nothing
End If
Next
End If
C#:
var hitInfo = GridView1.CalcHitInfo(e.Location);
if (e.Button == Windows.Forms.MouseButtons.Left)
{
foreach (GridColumn column in GridView1.Columns)
{
if (column.FieldName == hitInfo.Column.FieldName)
{
hitInfo.Column.AppearanceCell.BackColor = Color.FromArgb(226, 234, 253);
}
else
{
GridView1.Columns(column.FieldName).AppearanceCell.BackColor = null;
}
}
}
GridView.CalcHitInfo方法は、行ハンドルを取得するために呼び出されます。フォーカスがこの行に移動され、カスタムコンテキストメニューが呼び出されます。
列見出しをクリックすると、既定で列が並べ替えられます。マウスのクリック時に列を並べ替える機能を無効にするか、ユーザーが列ヘッダーをクリックして選択する際にキー(Ctrlキーなど)を押したままにしておくことを期待していますか? – Brendon
はい、私はそれを変更しました。列ヘッダーのソートは無効になっていますが、列ヘッダーの列(縦方向)をクリックするとデータが表示されます – Shankar
GridViewのオーバーロードされたSelectCellsメソッドを使用して、クリックした? https://documentation.devexpress.com/WindowsForms/DevExpress.XtraGrid.Views.Grid.GridView.SelectCells.method(sh0-JQ) – Brendon