2
當用戶雙擊列標題時,我必須檢查/取消選中列中的所有複選框(切換)。DevExpress DXGrid列標題雙擊事件
如何在DevExpress DxGrid控件中實現此行爲?
我已經搜索了DevExpress支持論壇,但是我還沒有找到解決方案。
另外,我正在研究MVVM模式。
當用戶雙擊列標題時,我必須檢查/取消選中列中的所有複選框(切換)。DevExpress DXGrid列標題雙擊事件
如何在DevExpress DxGrid控件中實現此行爲?
我已經搜索了DevExpress支持論壇,但是我還沒有找到解決方案。
另外,我正在研究MVVM模式。
這種情況適用於的WinForms,WPF中沒有測試過,我貼可能是引導您一些燈光:
有一種變通方法來做到這一點時,您必須實現yourGrid_DoubleClick
事件處理程序,然後計算出鼠標點擊hit Info
,命中info對象會告訴你,如果雙擊的是一列,像這樣:
private void yourGridViewName_DoubleClick(object sender, EventArgs e)
{
DevExpress.XtraGrid.Views.Grid.GridView sndr =
sender as DevExpress.XtraGrid.Views.Grid.GridView;
DevExpress.Utils.DXMouseEventArgs dxMouseEventArgs =
e as DevExpress.Utils.DXMouseEventArgs;
DevExpress.XtraGrid.Views.Grid.ViewInfo.GridHitInfo hitInfo =
sndr.CalcHitInfo(dxMouseEventArgs.Location);
if (hitInfo.InColumn)
{
string x = hitInfo.Column.Name;
//Rest of your logic goes here after getting the column name,
//You might now loop over your grid's data and do your logic
}
}
但你要注意,這個動作不會阻止排序的列的標題做,您可能需要禁用此網格的排序
希望這對我有所幫助。
thanx的回覆。我是使用鼠標雙擊event.when我雙擊一行我檢查/取消選中所有選定的行的成功,但列cb檢查/ unckeing我必須實現列標題雙擊事件,但不知道如何alredy。 .. – Syeda
使用相同的事件'grdiDoubleClick'並檢查'hitInfo.InColumn'屬性來指示用戶'雙擊'列標題或網格的另一部分,這應該爲你工作。 –