'C# 개체 참조가 개체의 인스턴스로 설정되지 않았습니다'에 해당되는 글 1건

728x90

C# 에서 새로운 창을 만들어서 새로운 창으로 값을 전달하는 걸 만들고 있었다.

그런데 실행을 하면 "개체 참조가 개체의 인스턴스로 설정되지 않았습니다" 라는 메시지를 뿌려준다.


검색을 해보니까

값이 null 일 경우에 이런 메시지가 나온다고 한다.


그래서 null 값으로 넘어가는 것이 있나 확인을 해봐도 결과는 동일하다.


결국 알고보니 DB에서 조회하는 필드에 없는 필드값을 화면에 적어둔 것이 문제였다.


기존 자료를 복사하여 붙여넣기 하고서 필요한 칼럼만 가져오기 위해서 DB Select 칼럼은 지웠는데 화면에 표시하는 칼럼 이름을 미처 삭제를 못하면서 발생한 현상이었다.


이것 원인 찾으라고 한참을 헤매었다.


소스코드를 그대로 복사하여 붙여넣기를 할 경우

private void searchBox_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        btnSearch_Click(sender, e);
    }
}


기능이 동작하지 않는다면???


searchBox_KeyDown 에서 마우스 우클릭을 하고, 모든 참조찾기(Shift + F12) 키를 눌러본다.


this.searchBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.searchBox_KeyDown);
가 검색되지 않는다면 이벤트 핸들러 등록이 안되어 있다는 것이다.

이 경우에는 이벤트 핸들러를 생성해주어야 한다.


ContextMenu 에서 메뉴 항목을 정리한다고 sub 메뉴로 이동시킬 때에도 연결되었던 이벤트핸들러가 연결이 사라지더라.




블로그 이미지

Link2Me

,