Language 60

[Error] System.Windows.Forms.DataGridViewCell.Value.get returned null

System.Windows.Forms.DataGridViewCell.Value.get returned null 에러의 경우 가장 해결하는 쉬운 방법은 ? Operator를 사용하는 것이다. dgvIncome.SelectedRows[0].Cells[1].Value?.ToString(); 값이 있을 경우에만 ToString()으로 변환해주는 코드라 에러가 뜨지 않지만 dgvIncome.SelectedRows[0].Cells[1].Value.ToString(); 아무런 값이 들어가있지 않은 경우에 위와 같은 코드를 실행하게 되면 " System.Windwos.Forms.DataGridViewCell.Value.get returned null "다음과 같은 에러메시지가 뜬다

Language/C# 2022.07.05

[리스트로 바인딩 된 DataGridview]

DataTable로 바인딩이 되어있으면 헤더쪽을 클릭하면 default설정으로 화살표(arrow)가 나오고, 자동으로 내림차순 , 오름차순 정렬이 된다. 리스트로 바인딩이 되어있는 DataGridView의 경우, 자동 내림차순 오름차순 정렬이 되지 않기 때문에 List형태를 DataTable형태로 변환해줘야 한다. public DataTable ToDataTable(List items) { DataTable dataTable = new DataTable(typeof(T).Name); PropertyInfo[] Props = typeof(T).GetProperties(BindingFlags.Public | BindingFlags.Instance); foreach (PropertyInfo prop in Pr..

Language/C# 2022.07.05

바인딩 된 datagridview에서 마우스 드래그로 컬럼 순서 변경

바인딩이 되어있는 DataGridView에서 마우스 드래그 이벤트를 통해서 컬럼 순서(위치)를 변경할 수 있는 방법 Row에 해당하는 내용은 구글링을 해도 많이 나오지만, Column에 해당하는 내용은 거의 없었다 응용해서 코드를 수정해본 내용이다 . private Rectangle dragBoxFromMouseDown; private int columnIndexFromMouseDown; private int columnIndexOfItemUnderMouseToDrop; private void metroGridWaferReview_MouseMove(object sender, MouseEventArgs e) { if ((e.Button & MouseButtons.Left) == MouseButtons.Le..

Language/C# 2022.07.04