No entiendo bien la duda que tienes pero para ponerle el acho de manera dinámica a tu datagrid tu puedes indicar en que medida lo quieres. (pixel, porcentaje, etc)
Ejemplo.
dgTotals.Width = Unit.Pixel(100)
dgTotals.Width = Unit.Percentaje(100)
dgTotals.Width = Unit.Point(100)
Si esa no es tu duda podrías se un poco mas claro ??
Saludos