2017-11-01 9 views
0

을 더블 클릭하여 선택한 Datagrid 셀 값을 가져옵니다.원하는 셀을 더블 클릭하여 선택된 DataGrid 값을 얻는 것이 가능한지 알고 싶으면

이 방법을 사용 했으므로 사용자는 원하는 셀을 선택하고 Ctrl + C를 눌러 클립 보드로 가져올 수 있지만 선택한 셀을 두 번 클릭 한 다음 클립 보드에 어떤 방식 으로든 넣을 수 있습니다 ?

private void OrdersGrid_OnCopyingRowClipboardContent(object sender, DataGridRowClipboardEventArgs e) 
{ 
    var currentCell = e.ClipboardRowContent[OrdersGrid.CurrentCell.Column.DisplayIndex]; 
    e.ClipboardRowContent.Clear(); 
    e.ClipboardRowContent.Add(currentCell); 
} 

답변

0

해결책을 직접 찾았습니다.

두 번 클릭하여 셀에서 선택한 값을 가져 오는 솔루션입니다.

private void OrdersGrid_OnMouseDoubleClick(object sender, MouseButtonEventArgs e) 
{   
    var cellInfo = OrdersGrid.CurrentCell; 
    { 
     var column = cellInfo.Column as DataGridBoundColumn; 
     if (column != null) 
     { 
       var element = new FrameworkElement() { DataContext = cellInfo.Item }; 
       BindingOperations.SetBinding(element, TagProperty, column.Binding); 
       var cellValue = element.Tag; 
       Clipboard.SetText(cellValue.ToString()); 
     } 
    }     
} 
+0

실제로 WPF를 사용하는 경우 [WPF 명령] (http://www.wpf-tutorial.com/commands/using-commands/)을 잘 숙지하십시오. – SeM