반응형

전체 글

(ASP.NET, C#) CSV 파일을 생성하고 다운로드 하는 간단한 소스 코드

아래의 코드는 CSV 파일을 생성하고, [다운로드] 버튼을 누르면 파일을 다운로드 하고, 엑셀에서 .csv 파일을 여는 간단한 C# 코드입니다. 파일 내용은 데이터베이스에서 가져와서 생성하는 것이 일반적이나 여기에서는 CSV 파일을 생성하는 방법과 다운로드 하고 엑셀로 여는 예를 보입 것입니다. 1. 웹폼에 버튼을 1개 추가하고, 클릭 이벤트에 코드를 작성합니다. protected void Button1_Click(object sender, EventArgs e) { // CSV 파일 생성 string csv = String.Empty; csv += "aa,bb,cc" + Environment.NewLine; csv += "11,44,77" + Environment.NewLine; csv += "22,5..

C#_ASP.NET 2023.06.24

(C#, ASP.NET) 텍스트 박스에서 엔터키 처리하기

텍스트박스에서 값을 입력하고, 엔터키를 누르면 [버튼]을 클릭하는 코드를 실행하고 싶은데, 텍스트박스의 기본 이벤트에는 키입력 처리를 할 수 없기 때문에 엔터키 처리를 할 수 없습니다. 여기에 관한 문제의 해결 방법을 설명합니다. C#, 웹폼(WebForm)의 텍스트 박스에는 윈폼처럼 클릭(Click) 이벤트가 없습니다. 아래의 예제처럼 텍트스박스에서 엔터키를 누르면 버튼의 클릭 이벤트를 처리하도록 설정할 수 있습니다. 예제 텍스트 박스 (ID): txtSearch 검새 버튼 (ID): btnSearch protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { } txtSearch.Attributes["onkeypress"] = ..

C#_ASP.NET 2023.06.24

(C#,윈폼) 숫자 맞히기 게임

컴퓨터가 임의로 생성한 숫자를 맞히는 게임을 C#언어로 만들어 봅니다. 윈도우 응용 프로그램입니다. 1. 비주얼스튜디오를 실행합니다 - 여기서는 비주얼스튜디오 2022 버전을 사용했습니다. 2. 프로젝트를 생성합니다. - Windows Forms 앱(.NET Framework) 3. 폼을 다음과 같이 디자인하고, 속성을 변경합니다. 폼 디자인 속성을 아래와 같이 변경합니다. 컨트롤 이름(Name) 속성 라벨(label) msg Text: "msg" Font: Size:12, Bold:True 텍스트 박스(TextBox) txtInput 버튼(button) btnOK btnStart Text: "확인" Text: "게임 시작" 폼 Form1 Size: 360, 230 Text: "숫자 맞히기 게임" Bor..

C# 2023.06.24

(C#) 윈폼 프로젝트 생성하기

윈폼은 Windows Forms를 간단히 줄여서 부르는 말로 윈도우에서 동작하는 폼을 지칭하는 명칭입니다. 윈폼 프로그램은 윈도우에서 동작하는 프로그램이며, 폼에 마우스를 이용해서 도구 상자(버튼, 텍스트 박스 등)을 드래그해서 쉽게 프로그램을 할 수 있습니다. 윈폼을 위한 프로젝트 생성하기 1. 비주얼스튜디오를 시작합니다 - 여기서는 Visual Studio 2022 버전을 기준으로 설명합니다. 2. 새 프로젝트 만들기를 선택합니다. 3. Windows Forms 앱(.NET Framework)를 선택합니다. 4. 프로젝트 이름을 입력합니다. 프로젝트 이름의 예: 인사관리, 자재관리, 학사관리, ... 연습용 프로그램이라면 기본으로 입력된 이름을 그대로 사용해도 됩니다. 프로젝트를 저장할 위치를 변경하..

C# 2023.06.24

(C#) ListView 실행시간에 마우스로 열 순서 변경하기

ListView의 AllowColumnReorder 속성을 이용하면 실행시간에 리스트뷰의 머리(head) 부분을 마우스로 끌어서 열(column) 순서를 변경할 수 있습니다. listView1.AllowColumnReorder = true; 열을 변경하더라도 인덱스는 변경되지 않습니다. C#의 ListView 컨트롤에서 열 순서를 변경하고 변경된 열 순서의 헤더를 가져오려면 다음과 같은 방법을 사용할 수 있습니다. // ListView 컨트롤에서 변경된 열 순서의 헤더 가져오기 string[] GetColumnHeaders(ListView listView) { string[] headers = new string[listView.Columns.Count]; // 열 순서대로 헤더를 가져옵니다. for (..

C# 2023.06.22

(C#) Access 데이터베이스에서 조건에 날짜를 사용하는 SQL 구문

C#에서 Acess 데이터베이스의 "날짜/시간" 형식의 필드에서 날짜를 조건으로 조회하는 SQL 구문의 예입니다. 아래 구문은 오류입니다. string sql = "select * from aa where birthday = '#2023-06-17#' ; // 오류 작은따옴표를 사용하면 안됩니다. 이렇게 작성해야 합니다. string sql = "select * from aa where birthday = #2023-06-17#"; 날짜를 DateTimePicker 컨트롤에서 선택받아 사용할 경우는 다음과 같이 작성해야 합니다. string sql = "select * from aa where birthday = #" + dateTimePicker1.Value.ToString().Substring(0,1..

C# 2023.06.17

(C#) FolderBrowserDialog: 폴더 찾아보기 대화상자

FolderBrowserDialog 대화상자는 폴더를 찾는 대화상자를 나타내고 사용자로부터 폴더를 선택하는 대화상자입니다. 파일명을 선택하는 것이 아니라 폴더(경로)만 선택받아 옵니다. "새 폴더 만들기" 기능이 있으며, 상단에 설명을 추가할 수 있습니다. SelectedPath 속성 선택한 경로명을 가져옵니다. 예제 using System; using System.Windows.Forms; namespace FolderBrowserEx { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { FolderBrowserD..

C# 2023.06.17

(C#) FontDialog 폰트 (글꼴) 대화상자

FontDialog는 사용자가 폰트를 선택받아서 사용할 수 있도록 해 줍니다. 폰트 대화상자에서 글꼴, 글꼴 스타일, 크기, 취소선, 밑줄 등의 기능을 한꺼번에 선택하여 사용할 수 있습니다. 아래 그림은 폰트 대화상자를 나타낸 것입니다. 예제 1. "Windows Forms 앱" 프로젝트를 생성합니다. 2. 폼에 RitchTextBox 1개, 버튼 1개를 배치합니다. - 소스 코드에는 워드 패드로 작성한 파일을 불러오지만, 필수 요소는 아닙니다. 3. 코드를 작성합니다. using System; using System.Windows.Forms; namespace FontEx { public partial class Form1 : Form { public Form1() { InitializeComponen..

C# 2023.06.15

(C#) 나이 계산, 날짜 차이 계산하기

다음은두 날짜 차이를 총 일수, 년도(나이)를 출력하는 C# 코드입니다. 나이는 만나이로 출력합니다. using System; namespace ConsoleApp4 { internal class Program { static void Main(string[] args) { DateTime date1 = new DateTime(1993, 5, 25); DateTime date2 = DateTime.Now; TimeSpan difference = date2.Subtract(date1); int differenceInYears = date2.Year - date1.Year; if (date2 < date1.AddYears(differenceInYears)) { differenceInYears--; } Con..

C# 2023.06.13
반응형