Agregando enumeración al cuadro combinado

Hola, ¿puedo saber cómo obtener el valor de enumeración a continuación para enlazar en el cuadro combinado? Escribí el siguiente código que funciona bien, pero me pregunto si esta es la mejor manera.

public enum CourseStudentStatus
{
  Active = 1,
  Completed = 2,
  TempStopped = 3,
  Stopped = 4,
}

//Bind Course Status
Dictionary<string, int> list = new Dictionary<string, int>();
foreach (int enumValue in Enum.GetValues(typeof(CourseStudentStatus)))
  list.Add(Enum.GetName(typeof(CourseStudentStatus), enumValue), enumValue);
var column = ((DataGridViewComboBoxColumn)dgv.Columns["studentCourseStatus"]);
column.DataPropertyName = "StudentStatus";              
column.DisplayMember = "Key";
column.ValueMember = "Value";
column.DataSource= list.ToList();

----------------- ACTUALIZACIÓN -------------------
He cambiado mi código a esto de acuerdo con Sanjeevakumar Hiremat y funciona perfectamente.

cbStatus.DataSource = Enum.GetValues(typeof(CourseStudentStatus));

Sin embargo, cuando quiero obtener un Get () y quiero volver a vincular el valor al cbStatus, emite el error {"Referencia de objeto no establecida en una instancia de un objeto"}
cbStatus.SelectedValue = Course.Status;.

El cbStatus.Datasource no está vacío y tiene valor después de enlazado acbStatus.DataSource = Enum.GetValues(typeof(CourseStudentStatus));

por favor aconséjame

Respuestas a la pregunta(2)

Su respuesta a la pregunta