-
reportviewer ‘System.CannotUnloadAppDomainException’ 에러 ㅠㅠ
ReportViewer 로 작업을 하고나서 종료 하려고 하는데 처리되지 않은 ‘System.CannotUnloadAppDomainException’ 형식의 예외가 mscorlib.dll에서 발생했습니다. 추가 정보: appdomain을 언로드하는 동안 오류가 발생했습니다. (예외가 발생한 HRESULT: 0x80131015)위와 같은 에러 메시지가 나오면 당혹스럽다. 이럴땐 코드 한줄만 추가해 주면 된다.예를 들면 private void frmMyForm_FormClosing(object sender, FormClosingEventArgs e){ reportViewer1.LocalReport.ReleaseSandboxAppDomain(); }위와 같이 로칼 […]
-
DataGridView 에서 입력 받으면서 검사 하고 싶을때
DataGridView에는 해당 셀의 편집이 시작되면 편집용 컨트롤을 보여줌과 동시에 EditingControlShowing 이벤트를 발생 시킵니다. 해당 이벤트를 연결하여 TextBox뿐만 아니라 편집모드에서 열리는 모든 컨트롤에 직접 접근 할 수 있습니다. ex) //이벤트 연결 this.dataGridView1.EditingControlShowing += new DataGridViewEditingControlShowingEventHandler(dataGridView1_EditingControlShowing); void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e){ TextBox box = e.Control as TextBox; if(box != null) box.TextChanged […]
-
TextBox 숫자 입력만 받도록 하기
// 정수형 값만 입력받도록 하기 private void textNum1_KeyPress(object sender, KeyPressEventArgs e) { if (!(char.IsDigit(e.KeyChar) || e.KeyChar == Convert.ToChar(Keys.Back) || e.KeyChar == ‘-‘)) { e.Handled = true; } } // 실수형 포함해서 입력받도록 하기 private void textNum1_KeyPress(object sender, KeyPressEventArgs e) { if (!(char.IsDigit(e.KeyChar) || e.KeyChar == Convert.ToChar(Keys.Back) || e.KeyChar == ‘-‘ || e.KeyChar == ‘.’)) { […]
-
끔찍하게 느린 DataGridView의 성능 높이기
.NET 2.0부터 추가된 윈폼 컨트롤이죠. 날 것 그대로 쓰면 아주 느려터져서 사용불가입니다. SuspendLayout/ResumeLayout, AutoSize… 속성 변경, VirtualMode 변경 등등 별의 별짓을 다 해도 느려터진 속도는 좋아지질 않습니다. 거의 포기할 즈~음, 구글신에게 의탁해 본 결과 다음과 같은 아주 간단하고 허무한 해결책이 있었네요. public class QuickDataGridView : DataGridView { […]
-
DataGridView 에서 엑셀처럼 자동 채우기, 기능 구현,
DataGridView에는 엑셀처럼 자동 채우기 기능이 없는것 같다.. 열ㅆㅣ미 구글링 하던 도중,, 땡잡았다,, 어떤분께서, DataGridView 를 서브클래싱해서,, 자동 채우기 기능을 구현해놓으셨다… 야호~~~~! ㅋㅋ 암튼 이거 하나 구해서,, 너무 편하다,,네임스페이스로 만들어 놓았으므로,, DataGridView 를 만들고 나서, 생성 하는부분과 선언하는부분만 해당 네임스페이스로 변경 해주면 끝난다. 나머지는 GridView와 동일하다.1191917819.cs
-
초간단 DataGridView 사용법 (추가중…)
행에 바인딩된 개체에 액세스(BindingList 사용권장) BindList은 목록 데이터 원본이 편집을 지원하도록 하기 위해 데이터 바인딩 인프라에 필요한 최소 인터페이스구현되어져 있따! http://msdn.microsoft.com/ko-kr/library/ms132679.aspx void invoiceButton_Click(object sender, EventArgs e) { foreach (DataGridViewRow row in this.dataGridView1.SelectedRows) { Customer cust = row.DataBoundItem as Customer; if (cust != null) { cust.SendInvoice(); } } } 표시를 위해 셀 내용의 서식을 지정해야 […]
-
Winform 새창 띄우기
MainForm 에서 SubForm을 띄우기MainForm 에서 아래와 같이 코드를 추가하면 새창을 띄울수 있다.방법1SubForm sf = new SubForm();sf.Owner = this;sf.Show();버튼에 추가할 경우 버튼을 클릭할때마다 새로운 창이 계속 생성된다.부모창의 내용을 볼 수 있고 다른 작업도 가능하다.방법2SubForm sf = new SubForm();sf.Owner = this;sf.ShowDialog();부모창에 종속된다. 부모창의 내용을 볼 수없으며 부모창의 다른 작업이 불가능하다.
-
C# ㅇㅔ서 DataGridView 사용하기
예전에 이자료를 어디에서 봐서 스킵(?) 해 놓는다는게 깜박했더니다시 찾을려니 2시간 넘게 검색만 하고 아까운 시간만 ㄷㄷㄷ————————————————– Writter by Youngil Kim, C#.NET Developer 이번에는 WinForm에서 제공하는 DataGridView컨트롤을 사용해보는 컬럼을 마련해 보았습니다. 일단 간단하게 VS2005에서 Windows 응용프로그램 프로젝트를 하나 만들고 윈폼화면에 DataGridView컨트롤 배치시키고 마음에 드는 사이즈로 만드세요! ^^ 여기서 사용하는 데이터베이스는 SQL Server 2005에서 새롭게 제공하는 […]
-
DataGridView 데이터 삽입하기
1. Data를 한 줄 단위로 추가하기 DataGridView를 Form의 원하는 위치에 붙은 뒤에 다음과 같이 Row 단위로 데이터를 추가할 수 있다. 위와 같이 한 줄 단위로 추가 하기 위해서는 다음과 같이 Column을 추가 할 갯수에 맞춰 미리 생성해 두어야 한다. column의 추가 방법은 다음과 같이 간단하게 할 수 있다. DataGridView 우측 상단에 보면 작은 네모안에 […]
-
VS2008 sln 파일을 VS2005로 변환(다운그레이드)하는 방법
이미 예전부터 sln 파일을 메모장으로 열어서 수정을 하고 있었기에 VS2005와 VS2008의 sln, vcproj 파일에는 큰 차이가 없다는 것을 느끼고 있었고 간단한 수정만 하면 둘 사이를 맘대로 왔다갔다 할 수 있을 것이라 예상하고 있었다. 마침 필요해서 VS2008을 VS2005로 바꿔야 하는 상황이 되어서 혹시나 해서 검색을 해 봤더니, 역시나 사람들은 이미 방법을 잘 찾아서 정리해 두었다. 참고 […]