The DataGrid is an ItemsControl (just like LiistView, ListBox etc ...), each ItemsControl has an associated ItemContainerGenerator which is responsible for generating the 'container' for your bounds data object. For the DataGrid, the container is a DataGridRow.

Have a look at the other methods on dg.ItemContainerGenerator, you might find them useful in the future.

Resolved! I found out that I needed to get the actual height, because Height is just a place holder to tell it what Height to set it at:
((DataGridRow)((DataGrid)sender).ItemContainerGenerator.ContainerFromItem((Objective)e.AddedItems[0])).ActualHeight

This does return the clicked row on this event:
private void SelectedRow(object sender, SelectionChangedEventArgs e)