ホームページ  >  記事  >  バックエンド開発  >  C# ユーザー コントロール

C# ユーザー コントロール

WBOY
WBOYオリジナル
2024-09-03 15:18:03470ブラウズ

C# ユーザー コントロールは、空のコントロールを提供する C# プログラミング言語の実装として定義されており、このコントロールを利用して他のコントロールを作成できます。この実装により、大規模な Web プロジェクトでコントロールを再利用するための柔軟性がさらに高まります。これはコントロールを再利用するだけでなく、ユーザーがバグを見つけて特定するのにも役立ち、より短時間でバグを解決することが容易になります。ユーザー コントロールを使用すると、コードを 1 か所で変更でき、その効果がすべての Web フォームまたはユーザー コントロールにアタッチされている Windows アプリケーションのフォームに反映されます。ユーザー制御のテクニックを使用すると、余分な労力と時間が非常に大きなメリットになります。

構文:

ユーザー コントロールとして宣言されるクラスのインスタンス化:

public partial class < class name > : UserControl
{
public < class name >
{
…
}
}

ユーザー コントロールで使用されるクラスのコンポーネントを初期化しています:

public < class name >
{
InitializeComponent();
}

アプリケーション フォームのクラスから選択したアイテムを返す:

get
{
return <component to be returned>
}

C# でユーザー コントロールを作成する方法?

ユーザー コントロールを作成するには、利用可能なすぐに使用できるコントロールを使用するだけでなく、独自のコントロールを作成することをお勧めします。コントロールの作成は次のように分類されます:

• 拡張: これは既存のコントロールの拡張によって実現され、再利用できるものを派生します。
• ユーザー: これは、他のいくつかのコントロールのグループを作成し、そのグループがアーキテクチャの一部として作成された理由を正当化できることを確認することによって実現されます。
• カスタム: これは、グラフィカル デバイス インターフェイス + (GDI +) とともにコントロールを描画することで実現されます。

上記の分類から、通常は複数のコントロールを組み合わせてビルド要件を論理的かつ機能的に正当化するユニットを形成することにより、必要なタスクを確実に実行するユーザー コントロールのポインタにエネルギーを集中します。要件は、機能を支援するため、または再利用性を向上させるためのいずれかです。ユーザー コントロールは他のクラスと同様に見え、ロジックはアプリケーションの設計面から分離されています。プロジェクト自体内にユーザー コントロールを作成することもできますが、再利用して保守性を向上させる必要がある場合には、Windows で別個の DLL またはコントロール フォーム ライブラリを作成することをお勧めします。

C# のユーザー コントロールについて説明する前に、ユーザー コントロールを作成するための前提条件を知る必要があります。そのためには Microsoft Visual Studio がシステムにインストールされている必要があります。前提条件が満たされたら、C# でのユーザー コントロールの作成を段階的に実行していきます。

1.このためには、まず Visual Studio で新しいプロジェクトを作成する必要があります。同様に、Visual Studio を開き、Visual Studio 内の既存のテンプレートから Windows フォーム コントロール ライブラリを選択し、Windows アプリケーション対応のものを確認する必要があります。

C# ユーザー コントロール

2.ここで、プロジェクトに必要な名前を付け、「次へ」をクリックして、最後に .NET Framework のバージョンを選択します。

C# ユーザー コントロール

3.フォームが初期化され、デザイン ページが表示されるまでにはしばらく時間がかかります。

4.左側のツールボックスからラベルをドラッグし、テキストを「国」として入力します。ドラッグする別の要素はコンボ ボックスです。

5.右側のソリューション エクスプローラーから、countriesClass.cs という名前のクラスを追加し、クラスにコードを入力します。

6.次に、メイン クラス (この場合は UserControl1.cs) に、例の構文セクションで説明したスニペットを追加します。

7.その国の通貨と対応する国の通貨を含むリストを追加します。

8.最後に、すべてが完了したら、ユーザー コントロールがどのように見えるかについてデザインの最終仕上げを行います。

9.最後に、ソリューション エクスプローラーでプロジェクト名を右クリックし、[再構築] をクリックして、ビルドの結果として DLL を生成します。これでエラーは発生しません。

C# ユーザー コントロール

次に、手順で説明した 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)
{
}
}
}

出力:

ユーザー コントロールのデザイン:

C# ユーザー コントロール

dll 生成:

C# ユーザー コントロール

結論

この記事では、C# でユーザー コントロールを作成するタスクを実行する手順を説明しました。最終的には、構築する他の Windows フォーム アプリケーション全体で同じユーザー コントロールを使用できるようになります。これで、ルートのユーザー コントロールを変更して DLL を再構築すると、DLL が存在する対応するアプリケーションに最新の変更が自動的に反映されるため、再利用可能になります。

以上がC# ユーザー コントロールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。