VB.NET データコントロールの使い方

(Visual Studio 2015 版)

投稿日 2015/09/23

[Home] | VB.NET インデックス

概要

Windows.Forms アプリケーションでツールボックスの「データ」に並んでいるコントロールの使い方を調べてみました。



Chart

ツールボックスからフォームに貼り付けると下のように表示されます。


グラフ・スタイルの変更

デフォルトでは縦の棒グラフですが、いろいろに変更できます。プロパティエディタで Series をクリックすると、次のようなダイアログ「シリーズコレクションエディター」が開くので、ChartType を変更します。

グラフのパレットを変更するには、プロパティエディタで Palette プロパティを変更します。


シリーズにデータを与えるには

1つのチャートには複数のグラフ(折れ線グラフで言えば複数の折れ線)を描画できます。これはシリーズ(系列)と呼ばれます。シリーズを追加するには、シリーズコレクションエディターで「追加」ボタンをクリックすることにより可能です。

シリーズのデータはシリーズコレクションエディターで Points コレクションにポイントデータを追加して行います。

DataPoints コレクションエディターで DataPoint を追加して XValue, YValue の値を指定します。

下の画像は DataPoint を追加した後のデザイン画面の状態です。

以上のような操作をプロパティエディタでなくコードで行えばチャートのシリーズをいろいろ変更できます。


表題などの変更

チャートのタイトルを変更するには、プロパティエディタで Titles をクリックして Title コレクションエディタを開きます。外観の(Text)を変更すればタイトルが変更(表示)されます。

シリーズの凡例を変更するには、Series コレクションエディタの LegendText を変更します。


BindingNavigator

プロパティ

下にサンプルのデザイン画面を示します。

ツールボックスから、BindingSource, BindingNavigator をフォームに貼り付けます。

BindingSource のプロパティエディタで DataSource をクリックして「プロジェクト データソースの追加」を実行します。データベースを選択し DataSet に追加するオブジェクトを選択します。この操作により XSD が作成されます。

DataMember はそれらのテーブルのどれかを設定します。

BindingNavigator のプロパティエディタで BindingSource をこの BindingSource に設定します。

データを表示するコントロール (この例では Label) に DataSet のテーブルのフィールドをバインドします。これは DataBinding プロパティを展開して Text に DataSet 内部のテーブルのフィールドを指定します。(LabelのTextプロパティでなくTagプロパティに割り当てることもできます)

プログラムを実行するとコントロール(ここでは Label) にテーブルの内容が表示され、ナビゲートできるはずです。


DataGridView

フォームに DataGridView と BindingSource を貼り付けます。プロパティエディタで BindingSource の DataSource をクリックして「プロジェクト データソースの追加」を実行します。データソース構成ウィザードに従って追加するデータソースを選択します。

このとき、DataSet1 と DataSet1.xsd が追加されます。そして BindingSource の DataMember にグリッドに表示するテーブルを指定します。

プロパティエディタで DataGridView の DataSource に BindingSource1 を設定します。

プログラムを実行するとテーブルの内容が表示されるはずです。


クエリー

テーブル全体でなくクエリー結果を表示したいときは、クエリビルダーを使用します。DataSet1.xsd でテーブルのテーブルアダプタを選択して、SelectCommand プロパティを展開して CommandText に SQL を記述します。

プロパティエディタで直接、記述せずに ... ボタンをクリックしてクエリビルダーを表示させた方が便利です。

 

 


 

 開設 2014年12月   著作権 2014-2015 bonk.red  連絡先: こちらからメッセージを送ってください。

 このページの先頭へ..