프로그래밍 43

[C#] Winform/Devexpress GridView DoubleClick Event

Devexpress GridControl에서 Doubleclick을 처리하기 위한 방법 코드 // GridControl var gridView = (gridControl.MainView as GridView); gridView.DoubleClick += gridView_DoubleClick; /// /// GridView DoubleClick Event /// private void gridView_DoubleClick(object sender, EventArgs e) { DXMouseEventArgs ea = e as DXMouseEventArgs; GridView view = sender as GridView; GridHitInfo info = view.CalcHitInfo(ea.Location); ..

프로그래밍/C# 2023.06.29

[C#] Winform/WPF 디자인모드(DesignMode) 구분하기

Winform 개발 시 UserControl 같은곳에서 Load Event시 Database Call 혹은 실제로 런타임 중에만 실행되야 되는 코드가 있을 경우 DesignMode로 구분이 필요합니다. 샘플코드 bool isInWpfDesignerMode = (LicenseManager.UsageMode == LicenseUsageMode.Designtime); bool isInFormsDesignerMode = (System.Diagnostics.Process.GetCurrentProcess().ProcessName == "devenv"); // Winform 에서 폼에서 직접 사용시 아래와 같은 프로퍼티를 추가한후 사용한다. private bool IsInFormsDesignerMode { get {..

프로그래밍/C# 2023.06.28

[C#] 경로 유효성 체크 - IsValidPath

경로 유효성 체크 IsValidPath 설치파일 등에서 경로 체크시에 사용된다. /// /// 경로가 유효한지 체크한다. /// /// 경로 private bool IsValidPath(string path) { // 경로 길이 체크 if (path.Length < 3) return false; // 드라이브 문자열 체크 Regex driveCheck = new Regex(@"^[a-zA-Z]:\\$"); if (driveCheck.IsMatch(path.Substring(0, 3)) == false) return false; // 경로 이름에 사용할 수 없는 문자가 있는지 체크 string invalidPathChars = new string(Path.GetInvalidPathChars()); inva..

프로그래밍/C# 2023.03.23

[C#] 레지스트리 등록, 조회, 삭제

32비트 레지스트리 등록, 조회, 삭제 // 경로: 컴퓨터\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\{ProductName} var reg32 = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32); RegistryKey reg32Sub = reg32.CreateSubKey("SOFTWARE").CreateSubKey(ProductName); reg32Sub.SetValue("key", "32bit_key"); // 값 추가 reg32Sub.GetValue("key") // 값 조회 reg32Sub.DeleteValue("key"); // 값 삭제 64비트 레지스트리 등록, 조회, 삭제 //..

프로그래밍/C# 2023.03.23

[C#] 참조 없이 인스턴스 생성하는 방법

exe, dll 파일 참조 없이 인스턴스 생성하는 방법 Activator.CreateInstance함수를 사용하면 된다. // // Activator.CreateInstance(assemblyName, typeName) // assemblyName: 파일이름 (확장자를 제외한 파일명) // typeName: 네임스페이스 포함 클래스명 // ObjectHandle handle = Activator.CreateInstance("WindowsFormsApp1", "WindowsFormsApp1.Form1"); Form form = (Form)handle.Unwrap(); 샘플

프로그래밍/C# 2023.03.21

[C#] winform MessageBox Topmost로 띄우기

winform 개발 시 Topmost로 설정된 폼 위로 MessageBox를 Show해야되는 경우가 있을때 Topmost True로 Show를 안할 시 메세지 박스가 가려지기 때문에 프로그램이 멈춘 것 처럼 인식 되므로 아래의 구문처럼 메세지 박스를 호출 해야된다. MessageBox.Show(new Form() { TopMost = true }, "TopMost MessageBox", "qratedev.tistory.com"); 메서드 설명 MessageBox.Show 메서드 (System.Windows.Forms) | Microsoft Learn MessageBox.Show 메서드 (System.Windows.Forms) 메시지 상자를 표시합니다. learn.microsoft.com

프로그래밍/C# 2023.03.06

[ASP] Exception 세션 상태 서버에 세션 상태 요청을 할 수 없습니다.

ASP.net 솔루션을 로컬에서 실행시 오류가 발생함 오류메시지 오류 메세지세션 상태 서버에 세션 상태 요청을 할 수 없습니다. ASP.NET 상태 서비스가 시작되었으며 클라이언트 포트와 서버 포트가 같은지 확인하십시오. 서버가 원격 컴퓨터에 있는 경우에는 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection의 값을 확인하여 해당 서버가 원격 요청을 받는지 확인하십시오. 서버가 로컬 컴퓨터에 있고 앞에서 언급한 레지스트리 값이 없거나 0인 경우에는 상태 서버 연결 문자열에 'localhost' 또는 '127.0.0.1'을 서버 이름으로 사용해야 합니다. 해결 ASP.NET State..

프로그래밍/ASP 2023.02.16
반응형