2012-05-04 1 views
6

Ho un DataGrid definito come segue. Quando faccio clic su una cella in DataGrid, viene evidenziata solo la cella. Come posso cambiarlo in modo che quando clicco sulla cella venga evidenziata l'intera riga?Come posso evidenziare un'intera riga DataGrid quando si fa clic su una singola cella?

<DataGrid Name="fileGrid" AutoGenerateColumns="False" Height="150" Width="Auto" 
      Margin="10,10,0,0" 
      HorizontalAlignment="Left" VerticalAlignment="Top" SelectionChanged="fileGrid_SelectionChanged"> 
    <DataGrid.Columns> 
     <DataGridTextColumn Header="Company Name" 
      x:Name="columnCompanyName" 
      Binding="{Binding Path=Customer.CompanyName}" 
      IsReadOnly="True">      
     </DataGridTextColumn> 

     <DataGridTextColumn Header="Customer Surname" 
      x:Name="columnCustomerSurname" 
      Binding="{Binding Path=Customer.Surname}" 
      IsReadOnly="True"> 
     </DataGridTextColumn> 

     <DataGridTextColumn Header="Customer Address" 
      x:Name="columnAddressLine1" 
      Binding="{Binding Path=Customer.Address.Line1}" 
      IsReadOnly="True"> 
     </DataGridTextColumn> 

     <DataGridTextColumn Header="Customer City" 
      x:Name="columnCity" 
      Binding="{Binding Path=Customer.Address.City}" 
      IsReadOnly="True"> 
     </DataGridTextColumn> 

    </DataGrid.Columns> 
</DataGrid> 
+0

ho provato alla ricerca di una proprietà riga associata la cella, ma non ce ne sono. Tutto quello che posso trovare sono le proprietà della colonna. – DaveDev

risposta

19

Hai provato <DataGrid SelectionMode="Single" SelectionUnit="FullRow">?

Ma in realtà il suo comportamento di default se scatto una cella l'intera riga viene evidenziata

SelectionMode doc: https://msdn.microsoft.com/en-us/library/system.windows.controls.datagridselectionmode%28v=vs.110%29.aspx

SelectionUnit doc: https://msdn.microsoft.com/en-us/library/system.windows.controls.datagrid.selectionunit%28v=vs.110%29.aspx

+0

Grazie - questo è esattamente. Devo aspettare 4 minuti per selezionare questo come risposta corretta. – DaveDev