.net core 3.0 정식 버 전 으로 Winform 프로그램 을 만 드 는 방법(그림)
1.개발 환경의 준비
.net core 3.0 을 기반 으로 한 WInform 개발 을 하려 면 먼저 Visual Studio 를 16.3 으로 업데이트 해 야 합 니 다.이 버 전 은.net core 3.0 을 통합 한 것 이기 때문에.net core Winform 프로그램 을 개발 할 수 있 는 기반 이기 도 합 니 다.
그 다음은 다운로드winforms-designer플러그 인 입 니 다.이것 은 Winform 창 을 지원 하 는 디자이너 입 니 다.컨트롤 을 드래그 하 는 방식 으로 인터페이스의 디자인 개발 을 할 수 있 습 니 다.
.NET Core Windows Forms 시각 화 디자이너 는 앞으로 미래의 Visual Studio 2019 업데이트 의 일부분 이 될 것 입 니 다.그러나 현재 시각 화 디자이너 를 사용 하려 면 미리 발 표 된 Visual Studio 확장 이 필요 합 니 다.
이 두 단 계 를 완성 하면 다른 개발 은 우리 가 일반적으로 VS 프로젝트 를 만 드 는 것 과 같다.
프로젝트 를 만 든 후에 우 리 는 해당 하 는 Winform 창 을 열 수 있 고 도구 상자 에서 Winform 인터페이스 컨트롤 을 볼 수 있 습 니 다.좋 은 것 은 컨트롤 의 차이 가 많 지 않 습 니 다.좋 은 것 은 일반적인 Winform 컨트롤 이 많이 줄 어 든 것 입 니 다.이것 도 현재 WInform 디자이너 가 미리 보기 판 을 개발 하고 있 는 이유 입 니 다.
2.WInform 프로그램 만 들 기
간단 한 테스트 를 위 한 WInform 프로그램 을 만 들 기 위해 서 우 리 는 안에 WInform 의 인터페이스 컨트롤 을 추가 할 수 있 습 니 다.그러나 사용 과정 에서 많은 인터페이스 에 필요 한 요 소 는 인터페이스 컨트롤 의 지원 을 제공 하지 않 았 습 니 다.도구 모음,속성 이 완선 되 지 않 았 습 니 다.예 를 들 어 ImageList 대상 과 Image 대상 의 속성 지원 등 은 코드 를 통 해 만 사용 할 수 있 습 니 다.
간단 한 WInform 인 터 페 이 스 를 만 들 고 일반적인 컨트롤 을 끌 었 습 니 다.그러나 일부 컨트롤 은 그림 을 사용 해 야 합 니 다.예 를 들 어 ListView,PictureBox 등 은 코드 설정 을 통 해(속성 을 통 해 그림 을 지정 할 수 없습니다)
마지막 화면 전시 효 과 는 다음 과 같다.
창의 원본 코드 는 다음 과 같다.
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(" , .net core Winform ", " ",
MessageBoxButtons.OK, MessageBoxIcon.Information | MessageBoxIcon.Asterisk);
}
private ImageList imageList = new ImageList();
private void Form1_Load(object sender, EventArgs e)
{
var image = Image.FromFile(Path.Combine(Application.StartupPath, "SplashScreen.png"));
if(image != null)
{
this.pictureBox1.Image = image;
}
imageList.Images.Clear();
var iconPath = Path.Combine(Application.StartupPath, "icons");
var fileNames = Directory.GetFiles(iconPath, "*.ico");
foreach(string file in fileNames)
{
imageList.Images.Add(file, Image.FromFile(file));
}
this.treeView1.ImageList = imageList;
foreach(TreeNode node in this.treeView1.Nodes)
{
SetNodeImage(node);
}
this.button1.Image = imageList.Images[2];
}
private void SetNodeImage(TreeNode node)
{
foreach (TreeNode subNode in node.Nodes)
{
subNode.ImageIndex = subNode.Level;
subNode.SelectedImageIndex = subNode.Level;
SetNodeImage(subNode);
}
}
이 를 통 해 알 수 있 듯 이.net core 의 WInform 프로그램 은 창 요소 나 관련 대상 이 일치 하지 않 고 이름 이 일치 하지 않 는 상황 이 발생 하지 않 았 습 니 다.사용 하기에 매우 편리 하고 일치 합 니 다.그러나 많은 인터페이스 에 대응 하 는 기능 입 니 다.현 재 는 배경 코드 의 사각형 으로 보충 해 야 비교적 완전한 효 과 를 실현 할 수 있 습 니 다..net Framework 프레임 워 크 에서 이미 완 선 된 매우 좋 은 Winform 개발 과 차이 가 조금도 없 는 것 같 습 니 다.보아하니.net core winform 개발 의 길 은 아직 멀 었 습 니 다.도구 차원 에서 더 많은 지원 이 필요 합 니 다.인터페이스 방안 에서 우 리 는 네 임 스페이스 도 예전 보다 많이 줄 어 든 것 을 보 았 다.주로.net core 에서 제공 하 는 WInform 패키지 입 니 다.
프로그램 디 렉 터 리 에 있 는 파일 을 다시 보 겠 습 니 다.아래 와 같 습 니 다.
현재 우 리 는 제3자 의.net core 차원 의 라 이브 러 리 를 고려 하지 않 았 기 때문에 여 기 는 제3자 의 DLL 을 사용 하지 않 았 습 니 다.나중에 통합 하면 제3자 와 관련 된 인용 도 매우 큰 문제 입 니 다.만약 에 대부분 자주 사용 하 는 라 이브 러 리 가.net standard 를 바탕 으로 하 는 라 이브 러 리 지원 이 있다 면 좋 습 니 다.그렇지 않 으 면 딜레마 에 직면 할 수 있 습 니 다.그러나.net core 의 Winform 개발 은 기대 할 만하 다 고 생각 합 니 다.왜냐하면 전체적인.net core 개발 노선 을 도입 하 는 것 은 기업 이나 개인 에 게 매우 좋 은 개발 장면 이기 때 문 입 니 다.
.net core 3.0 정식 버 전 을 사용 하여 Winform 프로그램 을 만 드 는 방법 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
.net 데이터베이스 조작 프레임워크 SqlSugar의 간단한 시작SqlSugar는 오래된 브랜드입니다.NET 데이터베이스 조작 프레임워크, 과당 빅데이터 과학기술팀이 유지 보수 및 업데이트, Github star 수 EF 및 Dapper 버금가 지원 데이터베이스: MySql, S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.