집 >백엔드 개발 >C#.Net 튜토리얼 >C# 사용자 컨트롤
C# 사용자 컨트롤은 빈 컨트롤을 제공하기 위해 C# 프로그래밍 언어로 구현한 것으로 정의되며 이 컨트롤을 활용하여 다른 컨트롤을 만들 수 있습니다. 이 구현은 대규모 웹 프로젝트에서 컨트롤을 재사용할 수 있는 추가적인 유연성을 제공합니다. 이는 컨트롤을 재사용하는 것뿐만 아니라 사용자가 버그를 찾아 정확히 찾아내고 더 짧은 시간에 버그를 더 쉽게 해결할 수 있도록 도와줍니다. 사용자 컨트롤을 통해 한 곳에서 코드를 변경할 수 있으며 그 효과는 모든 웹 양식이나 사용자 컨트롤에 연결된 Windows 응용 프로그램의 양식에서 볼 수 있습니다. 사용자 제어 기술을 사용하면 추가 노력과 시간이 매우 큰 이점이 됩니다.
구문:
사용자 컨트롤로 선언할 클래스의 인스턴스화:
public partial class < class name > : UserControl { public < class name > { … } }
사용자 컨트롤에 사용되는 클래스 구성 요소 초기화:
public < class name > { InitializeComponent(); }
수업에서 선택한 항목을 지원서 양식으로 반환:
get { return <component to be returned> }
이제 사용자 컨트롤을 만들려면 사용 가능한 기본 컨트롤을 사용하는 것 외에도 자체 컨트롤을 만드는 것이 좋습니다. 컨트롤 생성은 다음과 같이 분류됩니다.
• 확장: 이는 기존 컨트롤을 확장하여 수행되며 재사용할 수 있는 항목을 파생시킵니다.
• 사용자: 이는 여러 다른 컨트롤의 그룹을 만들고 그룹이 아키텍처의 일부로서 생성 이유를 정당화할 수 있는지 확인함으로써 수행됩니다.
• 사용자 정의: 그래픽 장치 인터페이스 +(GDI +)와 함께 컨트롤을 그려서 수행됩니다.
위 분류에서 우리는 일반적으로 하나 이상의 컨트롤을 결합하여 논리적, 기능적으로 빌드 요구 사항을 정당화하는 장치를 형성함으로써 필요한 작업을 수행하는지 확인하는 사용자 컨트롤 포인터에 에너지를 집중할 것입니다. 요구 사항은 기능을 지원하거나 재사용성을 향상시키는 것일 수 있습니다. 사용자 컨트롤은 다른 클래스와 유사하며 로직은 애플리케이션의 디자인 측면과 분리되어 있습니다. 프로젝트 자체 내에서 사용자 컨트롤을 생성할 수 있지만 재사용이 필요하고 더 나은 유지 관리가 필요한 경우 Windows에서 별도의 dll 또는 컨트롤 양식 라이브러리를 생성하는 것이 좋습니다.
C#의 사용자 컨트롤에 대해 이야기하기 전에 사용자 컨트롤 생성을 위한 전제 조건을 알아야 하며, 이를 위해서는 시스템에 Microsoft Visual Studio가 설치되어 있어야 합니다. 전제 조건이 충족되면 이제 C#에서 사용자 컨트롤 생성의 단계별 실행을 살펴보겠습니다.
1. 이를 위해서는 먼저 Visual Studio에서 새 프로젝트를 만들어야 합니다. 마찬가지로 Visual Studio를 열고 Visual Studio에 있는 기존 템플릿에서 Windows Forms Control Library를 선택한 다음 Windows 애플리케이션 지원 템플릿을 살펴봐야 합니다.
2. 이제 원하는 대로 프로젝트 이름을 지정하고 다음을 클릭한 후 마지막으로 .NET Framework 버전을 선택합니다.
3. 양식이 초기화되고 디자인 페이지로 이동하는 데 시간이 좀 걸립니다.
4. 왼쪽 도구 상자에서 레이블을 드래그하고 텍스트를 "국가"로 채웁니다. 드래그할 또 다른 요소는 콤보 상자입니다.
5. 오른쪽 솔루션 탐색기에서 countryClass.cs라는 클래스를 추가하고 클래스에 일부 코드를 입력하겠습니다.
6. 이제 우리의 경우 UserControl1.cs인 메인 클래스에 예제의 구문 섹션에서 언급한 코드 조각을 추가하겠습니다.
7. 해당 국가의 통화와 해당 국가의 통화가 포함된 목록을 추가합니다.
8. 마지막으로 모든 작업이 완료되면 사용자 컨트롤이 어떻게 보일지에 대한 디자인을 최종적으로 마무리합니다.
9. 마지막으로 솔루션 탐색기에서 프로젝트 이름을 마우스 오른쪽 버튼으로 클릭하고 다시 빌드를 클릭하여 빌드 결과로 dll을 생성하면 오류가 발생하지 않습니다.
다음으로 단계에서 언급한 2개의 클래스를 살펴보고 최종적으로 어떤 느낌인지 살펴보겠습니다.
사용자 제어를 위해 사용되는 다양한 클래스의 스니펫
구문:
countriesClass.cs
using System; using System.Collections.Generic; using System.Text; namespace UserControlDemo { public class countriesClass { public string currency { get; set; } public string countryName { get; set; } } }
UserControl1.cs
using System; using System.Collections.Generic; using System.Security.Permissions; using System.Windows.Forms; namespace UserControlDemo { public partial class UserControl1 : UserControl { public UserControl1() { InitializeComponent(); } public countriesClass SelectedCountry { get { return (countriesClass)countryCbs.SelectedItem; } } private void UserControl1_Load(object sender, EventArgs e) { List<countriesClass> list = new List<countriesClass>(); list.Add(new countriesClass() { currency = "USD", countryName = "United States" }); list.Add(new countriesClass() { currency = "INR", countryName = "India" }); list.Add(new countriesClass() { currency = "AUD", countryName = "Australia" }); list.Add(new countriesClass() { currency = "AED", countryName = "United Arab Emirates" }); list.Add(new countriesClass() { currency = "GBP", countryName = "United Kingdom" }); countryCbs.DataSource = list; countryCbs.ValueMember = "Currency"; countryCbs.DisplayMember = "Country"; } private void countryCbs_SelectedIndexChanged(object sender, EventArgs e) { } } }
출력:
사용자 컨트롤 디자인:
dll 생성:
이 문서에서는 C#에서 사용자 컨트롤을 만드는 작업을 수행하는 단계를 살펴봤고, 마지막으로 빌드할 다른 Windows Form 애플리케이션 전체에서 동일한 사용자 컨트롤을 사용할 수 있습니다. 이제 루트에서 사용자 컨트롤을 변경하고 dll을 다시 빌드하면 dll이 있는 해당 애플리케이션에 자동으로 최신 변경 사항이 반영되므로 재사용이 가능합니다!
위 내용은 C# 사용자 컨트롤의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!