본문 바로가기

프로그래밍/C#

(4)
Combobox 를 Key & Value (Text or Value) 로 사용하기 c# 의 combobox 컨트롤은 하나의 객체만 추가할 수 있다. 그래서 html 의 처럼 보이는 값(Text) 따로 실제 값(Value) 따로 세팅해서 사용하기가 번거롭다. 여러가지 방법이 있지만 경험상 가장 간단한 방법을 소개한다. 바로 object 와 BindingList 를 사용하는 방법이다. 아래 예제를 참고하면 아주 간단하게 적용할 수 있다. public partial class Form1: Form { private BindingList typeList = new BindingList(); public Form() { typeList.Add(new { Text = "부모님", Value = "parents" }); typeList.Add(new { Text = "선생님", Value = "t..
c# 설치 후 자동실행 c# Setup 프로젝트를 이용하여 설치 후 자동 실행#ads_1셋업프로젝트는 다 만들었다 가정하고1. 설치가 될 대상 프로젝트(Target Project)에서 아래 작업을 진행한다1) 추가 -> 새항목 -> 설치 관리자 클래스2) 생성된 클래스(예. Install1.cs)에 OnAfterInstall 메소드를 override 한다. 123456789protected override void OnAfterInstall(IDictionary savedState){ string path = this.Context.Parameters["assemblypath"]; var p = new System.Diagnostics.Process(); p.StartInfo.FileName = path; p.StartInfo..
HttpUtility 가 인식이 안될때 HttpUtility 를 사용하려 하는데 인식이 안될 수 있다 HttpUtility 는 .Net FrameWork 4.0 Full 버전에서만 사용할 수 있다.#ads_1 4.0 Full 버전을 깔고 난뒤 아래 순서로 실행한다.1. 프로젝트에서 오른쪽 마우스 팝업메뉴를 펼친다.2. "참조추가..." 클릭3. .Net 탭 선택4. System.Web 추가 모두 완료 후 솔루션을 닫았다가 새로 열면 인식이 된다 #ads_2
PInvoke 함수 'CXXXX__ReleaseDC'에 대한 호출 결과 스택이 불안정하게 되었습니다 오류 : PInvoke 함수 'CXXXX__ReleaseDC'에 대한 호출 결과 스택이 불안정하게 되었습니다 #ads_1디버깅할때 위와 같은 에러가 난다면 함수의 호출방법을 정의해 주지 않아서 입니다. 3.5에서는 호출방법에 대한 정의가 없는지 에러가 나지 않습니다. [DllImport("test.dll", CallingConvention = CallingConvention.Cdecl)] 인자를 받는 함수에서는 위와 같이 호출방법을 정의해 주어야 합니다. 그러면 에러가 발생하지 않습니다. 인자가 없는 함수는 기본적으로 Stdcall 방식으로 호출합니다. #ads_2