반응형

C# 9

[C#] C# 대리자(delegate)의 발전

C# 1.0에서는 코드의 다른 위치에 정의된 메서드를 사용하여 명시적으로 초기화하는 방식으로 대리자의 인스턴스를 만들었습니다. C# 2.0에서는 대리자 호출에서 실행될 수 있는 이름 없는 인라인 문 블록을 작성하는 방법으로 무명 메서드의 개념을 소개했습니다. C# 3.0에서는 개념적으로 무명 메서드와 비슷하지만 더 간결하고 표현이 다양한 람다 식을 소개했습니다. 이러한 두 기능을 함께 익명 함수라고 합니다. 일반적으로 .NET Framework의 버전 3.5 이상을 대상으로 하는 애플리케이션은 람다식을 사용해야 합니다. 다음 예제에서는 C# 1.0에서 C# 3.0까지 대리자 만들기의 발전을 확인할 수 있습니다. class Test { delegate void TestDelegate(string s); s..

C# .NET 2022.07.03

[C#] uint, UInt16, UInt32 and UInt64 in C#

C#에서 uint, UInt16, UInt32, UInt64 간의 차이점 uint, UInt16, UInt32 및 UInt64는 메모리에서의 용량 및 점유된 크기를 기반으로 값 범위를 갖는 부호없는 정수를 표현하는데 사용됩니다. 이러한 유형은 양수의 값으로 작동하고, 각각의 차이는 값의 범위가 다릅니다. 1) UInt16 UInt16은 16 비트(2 바이트) 부호없는 정수를 뜻합니다. UInt16은 메모리에서 16 비트(2 바이트) 공간을 차지합니다. (16 비트 컴퓨터/ 산업용 PLC 등) 2 바이트 부호없는 정수의 데이터 범위는 0 ~ 65535 입니다. [사용예] using System; using System.Text; namespace Test { class Program { static voi..

C# .NET 2020.09.12

Panel내부에서 Control 위치변경 ( Drag & Drop )

Sample로 WindowsForm에 Panel 하나와 PictureBox 3개 (Control) 를 배치하여 테스트 함. public partial class Form1 : Form { Random rnd = new Random(); public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { this.panel1.AllowDrop = true; foreach(Control c in this.panel1.Controls) { c.MouseDown += new MouseEventHandler(C_MouseDown); } this.panel1.DragOver += new DragEventHandl..

C# .NET 2019.12.11

[BandedGridView] 밴드에 정렬이벤트부여 및 필터링(결과내 검색)

일반 GridControl에서 컬럼헤드에는 기본적으로 정렬과 필터링이 적용되어 있으나, BandedGridControl, AdvBandedGridControl 의 밴드에는 정렬이나 필터링이 기본적용되어 있지 않다. 1. 필터링 기능 제공방법 상당의 리본메뉴나 기타버튼을 통해 필터기능(속성)을 끄고, 켤 수 있다. private void Btn_InnerSearch_ItemClick(object sender, ItemClickEventArgs e) { Grv1.OptionView.ShowAutoFilterRow = !Grv1.OptionView.ShowAutoFilterRow; } 이렇게 버튼에 간단히 이벤트를 부여해서 해당 밴드그리드뷰의 필터기능을 활성화해서 사용 할 수 있다. 2. 밴드에 정렬기능 부여..

DevExpress&UI 2019.10.11

[C#][Network][Thread] C#에서 쓰레드를 이용한 에코서버의 기본구조

// Thread Netwotk Server Exam namespace threadNetworkExam{ public partial class Form1 : Form { // TCP 소켓통신 서버구현을 위해 TCP리스너 정의/초기화 private TcpListener tcpListner = null; public Form1() { InitializeComponent(); } // Thread Method // Client 접속시 스레드가 호출하여 작업할 메소드 정의 private void AcceptClient() { while (true) { // Client 소켓통신을 위해 수신을 대기하는 TcpClient 생성 // TcpListner를 통해 생성 TcpClient tcpClient = tcpLis..

C# .NET 2019.03.18
반응형