In this post, I created a datagrid dynamically or from code. When a record is loaded, the scrolling is slow using Scrollviewer control. So to translate into code behind here's what i come up. Binding bindHeight = new  Binding();   bindHeight.ElementName = String.Format( "sizingElement{0}" , index + 1);   bindHeight.FallbackValue = 1;   bindHeight.Path = new  PropertyPath( "ActualHeight" );   //mapGrid is the datagrid object   mapGrid.SetBinding(DataGrid.HeightProperty, bindHeight);   XAML Markup:  <StackPanel x:Name= "spThur"  Height= "Auto"  Background= "Green"  HorizontalAlignment= "Left"  Orientation= "Horizontal" >         <Rectangle Name= "sizingElement4"  Fill= "Transparent"  Margin= "1"  Height= "333" />     </StackPanel>   The mapGrid datagrid is added to the stackpanel. And the Rectangle object is the sizing element.I found the solution from this ...