次の方法で共有


.NET Framework アプリケーションの [データ ソース] ウィンドウにカスタム コントロールを追加する

DataSet クラスと関連クラスは、アプリケーションがデータベースから切断されている間にアプリケーションがメモリ内のデータを操作できるようにする、2000 年代初頭のレガシ .NET Framework テクノロジです。 このテクノロジは、ユーザーがデータを変更し、変更をデータベースに保持できるアプリに特に役立ちます。 データセットは実証済みの成功したテクノロジですが、新しい .NET アプリケーションには Entity Framework Core を使用することをお勧めします。 Entity Framework は、オブジェクト モデルとして表形式データを操作するより自然な方法を提供し、よりシンプルなプログラミング インターフェイスを備えています。

[データ ソース] ウィンドウからデザイン サーフェイスに項目をドラッグしてデータ バインド コントロールを作成する場合は、作成するコントロールの種類を選択できます。 ウィンドウ内の各項目には、選択できるコントロールを表示するドロップダウン リストがあります。 各項目に関連付けられているコントロールのセットは、項目のデータ型によって決まります。 作成するコントロールが一覧に表示されない場合は、このトピックの手順に従って、コントロールを一覧に追加できます。

[データ ソース] ウィンドウでアイテム用に作成するデータ バインド コントロールの選択の詳細については、「 データ ソース」ウィンドウからドラッグするときに作成するコントロールを設定するを参照してください。

バインド可能なコントロールの一覧をカスタマイズする

特定のデータ型を持つ [データ ソース] ウィンドウ内の項目に対して使用可能なコントロールの一覧からコントロールを追加または削除するには、次の手順を実行します。

データ型に一覧表示するコントロールを選択するには

  1. WPF デザイナーまたは Windows フォーム デザイナーが開いていることを確認します。

  2. [ データ ソース] ウィンドウで、ウィンドウに追加したデータ ソースの一部である項目をクリックし、項目のドロップダウン リスト メニューを選択します。

    ヒント

    [データ ソース] ウィンドウが開いていない場合は、表示>その他のウィンドウ>データ ソースを選択して開きます。

  3. ドロップダウン リスト メニューで、[ カスタマイズ] をクリックします。 次のいずれかのダイアログ ボックスが開きます。

    • Windows フォーム デザイナーが開いている場合は、[オプション] ダイアログ ボックスの [データ UI のカスタマイズ] ページが開きます。 詳細については、「 データ UI のカスタマイズ オプション」ダイアログ ボックスを参照してください。

    • WPF デザイナーが開いている場合は、[コントロール バインドのカスタマイズ] ダイアログ ボックスが開きます。

  4. ダイアログ ボックスで、[データ型] ドロップダウン リストから データ型 を選択します。

    • テーブルまたはオブジェクトのコントロールの一覧をカスタマイズするには、[ リスト] を選択します。

    • テーブルの列またはオブジェクトのプロパティのコントロールの一覧をカスタマイズするには、基になるデータ ストア内の列またはプロパティのデータ型を選択します。

    • ユーザー定義図形を持つデータ オブジェクトを表示するようにコントロールの一覧をカスタマイズするには、[ その他] を選択します。 たとえば、アプリケーションに特定のオブジェクトの複数のプロパティからのデータを表示するカスタム コントロールがある場合は、[ その他] を選択します。

  5. [ 関連付けられたコントロール ] ボックスで、選択したデータ型に使用する各コントロールを選択するか、一覧から削除するコントロールの選択を解除します。

    選択するコントロールが [ 関連付けられたコントロール ] ボックスに表示されない場合は、コントロールを一覧に追加する必要があります。 詳細については、「 関連付けられたコントロールを追加する」を参照してください。

  6. OK をクリックします。

  7. [ データ ソース ] ウィンドウで、1 つ以上のコントロールを関連付けたデータ型の項目をクリックし、項目のドロップダウン リスト メニューを選択します。

    [ 関連付けられた コントロール] ボックスで選択したコントロールが、アイテムのドロップダウン リスト メニューに表示されるようになりました。

関連付けられているコントロールを追加する

コントロールをデータ型に関連付けるが、[ 関連付けられた コントロール] ボックスにコントロールが表示されない場合は、コントロールを一覧に追加する必要があります。 コントロールは、現在のソリューションまたは参照されるアセンブリに配置する必要があります。 ツールボックスでも使用 でき、コントロール のデータ バインディング動作を指定する属性が必要です。

関連付けられているコントロールの一覧にコントロールを追加するには:

  1. ツールボックスを右クリックし、[項目の選択] を選択して、目的のコントロールをツールボックスに追加します。

    コントロールには、次のいずれかの属性が必要です。

    特性 説明
    DefaultBindingPropertyAttribute この属性は、データの単一の列 (またはプロパティ) を表示する単純なコントロール ( TextBoxなど) に実装します。
    ComplexBindingPropertiesAttribute この属性は、 DataGridViewなどのデータのリスト (またはテーブル) を表示するコントロールに実装します。
    LookupBindingPropertiesAttribute データのリスト (またはテーブル) を表示するコントロールにこの属性を実装しますが、 ComboBoxなど、単一の列またはプロパティも表示する必要があります。
  2. Windows フォームの場合、[ オプション] ダイアログ ボックスで、[ データ UI のカスタマイズ ] ページを開きます。 または、WPF の場合は、[ コントロール バインドのカスタマイズ ] ダイアログ ボックスを開きます。 詳細については、「 データ型のバインド可能なコントロールの一覧をカスタマイズする」を参照してください

  3. [ 関連付けられたコントロール ] ボックスに、 ツールボックス に追加したコントロールが表示されます。

    関連付けられているコントロールの一覧に追加できるのは、現在のソリューション内または参照されているアセンブリ内にあるコントロールだけです。 (コントロールは、前の表のデータ バインディング属性の 1 つも実装する必要があります)。[データ ソース] ウィンドウで使用できないカスタム コントロールにデータをバインドするには、[ ツールボックス ] からデザイン画面にコントロールをドラッグし、[ データ ソース ] ウィンドウからコントロールにバインドする項目をドラッグします。