2016-04-13 11 views
0

Ich habe eine Spalte in meinem DataGrid, die so eingestellt ist;DataGrid Button-Spalte erscheint nicht

<DataGridTemplateColumn Header="RAMs PDF" Width="*"> 
    <DataGridTemplateColumn.CellEditingTemplate> 
     <DataTemplate> 
      <Button Content="Select RAMs PDF" Click="OnRAMsButtonClick"/> 
     </DataTemplate> 
    </DataGridTemplateColumn.CellEditingTemplate> 
</DataGridTemplateColumn> 

Dies zeigt eine Schaltfläche in jeder Zeile, aber nur, wenn ich in die Zelle klicken, die die Schaltfläche enthält. Wenn sich der Fokus nicht innerhalb dieser Zelle befindet, wird Button nicht angezeigt. So sieht es aus, ohne in die Zelle zu klicken;

enter image description here

Nachdem jedoch in die Zelle zu klicken (zweimal) die Button erscheint;

enter image description here

Wie kann ich es so A) die Button sichtbar ist, ohne im Inneren der Zelle und B klicken) muss der Benutzer nur auf die Zelle für das Click-Ereignis einmal klicken Sie auf den Button zu Trigger ? (Statt der drei derzeit zwei die Taste, um erscheinen, ein das Click-Ereignis auszuführen.

+0

Die CellEditingTemplate nur angezeigt wird, wenn die Zelle zu bearbeiten. Sie müssen Setzen Sie die Schaltfläche in die DataGridTemplateColumn.CellTemplate. – momar

Antwort

1

Verwenden Sie die Celltemplate statt CellEditingTemplate

<DataGridTemplateColumn Header="RAMs PDF" Width="*"> 
    <DataGridTemplateColumn.CellTemplate> 
     <DataTemplate> 
      <Button Content="Select RAMs PDF" Click="OnRAMsButtonClick"/> 
     </DataTemplate> 
    </DataGridTemplateColumn.CellTemplate> 
</DataGridTemplateColumn>