TryParse 메서드

입력한 문자열이 숫자로 변환할 수 있는 문자열인지 체크하여 
숫자로 변환이 가능하다면 True, 문자등이 포함되어 있어서 숫자로 변환이 불가능한다면 False를 반환한다.

 

  • 아래는 가단하게 테스트 해볼 수 있는 코드
using System;

namespace StringConversion
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("숫자를 입력해주세요: ");
            if (int.TryParse(Console.ReadLine(), out int intInput))
                Console.WriteLine(intInput);
            else
                Console.WriteLine("{0} : 입력한 값을 다시 확인해주세요.");

            // 프로그램이 종료되지 않도록 추가
            Console.WriteLine("프로그램을 종료하려면 아무 키나 누르세요...");
            Console.ReadLine(); //엔터 키를 누를 때까지 대기.
        }
    }
}

'C#' 카테고리의 다른 글

[C#] 메인폼에서 다른폼 열기  (0) 2024.04.26
[C#] 파일 다운로드기능  (0) 2024.01.05
[C#] 버튼 일괄 숨기기 / 보이기  (0) 2023.11.23
Posted by 샌츠
,

메인폼의 메뉴에서 다른 서브폼을 열었을때, 가장 기본적인 코드로 폼을 열어보면 서브창만 움직일 수 있고

메인폼은 움직일 수가 없다.

using System;
using System.Windows.Forms;

namespace Namespace
{
    public partial class MainForm : Form
    {
        public MainForm()
        {
            InitializeComponent();
        }

        private void menuButton_Click(object sender, EventArgs e)
        {
            //폼을 생성하고 보여줍니다.
            frmSub subForm = new frmSub();
            subForm.ShowDialog(); // 모달 다이얼로그로 표시합니다.
        }
    }

    public partial class frmSub : Form
    {
        public frmSub()
        {
            InitializeComponent();
        }
    }
}

 

아래의 코드는 메뉴의 버튼을 눌렀을때, 서브폼이 팝업되고 메인폼도 제어가 가능한 코드이다.

그리고 sub폼이 열린 상태에서 메뉴의 버튼을 다시 한번 누르면 에러가 발생한다.

이것을 방지하기 위해서는 subForm이 실행되엇는지 체크하면 된다.

using System;
using System.Windows.Forms;

namespace Namespace
{
    public partial class MainForm : Form
    {
        private frmSub subForm; // frmSub 폼의 인스턴스를 보관할 멤버 변수 선언

        public MainForm()
        {
            InitializeComponent();
        }

        private void menuButton_Click(object sender, EventArgs e)
        {
            if (subForm == null || subForm.IsDisposed)
            {
                // frmSub 폼이 없거나 이미 닫혔다면 새로 생성.
                subForm = new frmSub();
                subForm.FormClosed += (s, args) => subForm = null; // 폼이 닫힐 때 참조를 제거.
            }

            if (!subForm.Visible)
            {
                subForm.Show(this); // MainForm의 소유자로 frmSub 폼을 표시.
            }
        }
    }

    public partial class frmSub : Form
    {
        public frmSub()
        {
            InitializeComponent();
        }
    }
}

'C#' 카테고리의 다른 글

[C#] 문자열을 숫자로 변환  (0) 2024.05.23
[C#] 파일 다운로드기능  (0) 2024.01.05
[C#] 버튼 일괄 숨기기 / 보이기  (0) 2023.11.23
Posted by 샌츠
,

새 노트북을 구매하고 새롭게 개발 환경을 세팅하고 

github의 리포지토리를 Sourcetree에 처음 연동할때엔 잘 되었던 것으로 기억하고 있었는데,

어제 갑자기 인증 오류가 발생하였다.

오류는 다음과 같다

remote: Support for password authentication was removed on August 13, 2021.
Please use a personal access token instead.

내용을 보면 몇년전이라는데, 왜 나는 잘 되다가 이제야 발생한 것인진 잘 모르겠다.

해결방법

- 인터넷을 찾아보니 여러 방법들이 있었는데, 한참을 고생하고 나서야 해결 할 수 있었다.

그런데 그 방법이 인터넷의 정보와는 조금 달라, 나중을 위하여 블로그에 남기고자 한다.

1. 토큰 생성

    - 깃허브에 로그인 후 Setting 메뉴로 들어간다.

1-1. 좌측 메뉴 하단에 Developer Settings

1-2.Personal access tokens > Tokens(classic)

1-3. Generate new token > Generate new token (classic)

    - 패스워드 입력 필요

1-4.권한 설정

1-5. 토큰값 확인

2. 해당 토큰값을 Sourcetree에 적용하기

2-1. 소스트리에서 토큰을 적용하고자 하는 리포지토리를 선택후 설정 메뉴 접속

2-2. 보통 원격 저장소 정보의 경로는 다음과 같을 것이다.

https://github.com/repo/name.git

2-3. 위 경로의 주소를 다음과 같이 설정한다.

https://아이디:토큰값@github.com/repo/name.git

2-4. 그리고 추가 확장 통합의 Remote Account 에 Github 계정으로 인증을 한다.

( * 이부분은 월래 로그인이 되어 있어서 이번 오류에 영향이 있는지는 확인이 되진 않음)

 

 

위와 같이 작업을 할 경우 여러 리파지토리의 계정이 모두 달라도 해당 계정의 토큰을 할당 받으면  Patch, Pull, Push가 모두 정상 작동 한다.  끝.

'Git' 카테고리의 다른 글

[git] Push시 파일용량이 100M 초과시 에러 발생  (0) 2024.06.04
Posted by 샌츠
,