1
我試圖刪除一些內容到DataGrid中,刪除的內容必須映射到列上執行的刪除操作。如何獲取DataGrid水平滾動大小?
要做到這一點,我設置了我的Datagrid.AllowDrop = true並使用它的寬度屬性計算列。
private void DGrdDatosImportar_Drop(object sender, DragEventArgs e)
{
var dropPos = e.GetPosition(DGrdDatosImportar);
double RefPos = DGrdDatosImportar.RowHeaderActualWidth;
DataGridColumn SelecteCol = null;
foreach (DataGridColumn Col in DGrdDatosImportar.Columns.ToList())
{
double ColWidth = Col.ActualWidth;
if (dropPos.X >= RefPos && dropPos.X <= (RefPos + ColWidth))
{
SelecteCol = Col;
break;
}
RefPos += ColWidth;
}
if (SelecteCol != null)
{
if (e.Data.GetDataPresent("IImportProperty"))
{
ImportColumn ImpCol = (ImportColumn)SelecteCol;
IImportProperty prop = e.Data.GetData("IImportProperty") as IImportProperty;
Importar source = ((Importar)GrdMain.DataContext);
source.EmparecarColumna2Excel(prop, ImpCol.ColParms);
}
}
}
它適用於所有列適合我的屏幕,但是當執行水平滾動時失敗。
我正在尋找,讓我獲得了水平滾動進行,但無法找到任何東西,在每列相同,但沒有什麼:(
我該怎麼做才能得到的金額對我Datagrid的任何財產在我的DataGrid進行水平滾動?
還有一個辦法,以獲取在其中執行我滴列?
你救我的天!TKS –