connet.lolipop.jp
ソリューションを作成する

アプリケーションの作成は新規にソリューションを作ることから始めます。
Windowsアプリケーション


「SharpDevelop」を起動。
➤ [メニュー] ➤ [ファイル] ➤ [新規作成] ➤ [ソリューション]を選択
➤ テンプレート枠内の「Windowsアプリケーション」を選択してクリック。
⬇︎
名前を入力します。ここでは「CrudSampleApp」とします。
入力するとソリューション名の入力欄にも同名で自動で表示されます。
名前はプログラムの中の「namespace」の名前として、自動で設定されます。
「新規」ボタンを押して終了。

プロジェクトウィンドウ(左サイド)にプロジェクトのディレクトリツリーが自動生成されます。
プロジェクトのディレクトリツリー

ディレクトリにはMainメソッドを含むProgramクラスからさらに、MainFormの型テンプレート等の基本的なソースコードを自動的に生成してくれます。

ここで、プログラムを実行することもできます。
メニューの「プロジェクト」の中の「プロジェクトを実行」又は右向き矢印( )あるいは「F5」のいずれかでOK。
空の「MainForm」が表示すれば成功!

新規に作成したプロジェクトファイルは、下記の場所に保存されるので確認してみて下さい。
「c:/Users/user/Documents/SharpDevelop Projects/」
また、実行ファイル(拡張子=exe)は
「SharpDevelop Projects/CrudSampleApp/CrudSampleApp/bin/Debug/」
に保存。
「System.Data.SQLite.dll」を設定する

前述で「NuGet」から取得して一時保存しておいた、dllの保存場所の変更と、プロジェクトへの登録を行います。

▪︎ dllの保存場所

プロジェクトのdebugフォルダーの中に保存します。
「SharpDevelop Projects/CrudSampleApp/CrudSampleApp/bin/debug/」

▪︎ dllの登録

SharpDevelop(IDE)を起動。
⬇︎
ファイル ➤ 開く ➤ プロジェクト/ソリューション ➤ 「CrudSampleApp.sln」を選択して開く。
⬇︎
ディレクトリの「参照」フォルダーを右クリック。
⬇︎
リスト一覧から「参照を追加」を選択。
⬇︎
「参照を追加」ウインドウのメニューから「NETアセンブリブラウザ」を選択。
「NETアセンブリブラウザ」

⬇︎
「参照」と「選択」ボタンのうち、ここでは「選択」ボタンをクリック。
⬇︎
開いたエクスプローラーから保存済の「System.Data.SQLite.dll」を指定して「開く」をクリック。
⬇︎
再度、「参照を追加」ウインドウが開き、dllが「選択された参照」枠に再表示。「OK」を押して終了。
⬇︎
dllがプロジェクトに正常に追加されたか、ディレクトリの「参照」フォルダを開いて確認してみて下さい。
「参照」にSystem.Data.SQLite.dllを登録

これで、「C#」から「SQLite」データベースを利用することができます。

アプリケーションフォームを作成する

プログラミングのはじめはフォームデザイナーを使って画面のデザインから。
⬇︎
SharpDevelopを起動。
⬇︎
CrudSampleApp(ファイルから開く場合は「CrudSampleApp.sln」を選択)
⬇︎
ディレクトリ ➤ MainForm.csフォルダのMainForm.Designer.csクラスをダブルクリック。
⬇︎
コードウィンドウにソースコードが表示。 ➤ コードウィンドウの「デザイン」タブをクリック。
⬇︎
小さな空白の「MainForm」(型テンプレートフォーム)が開く。
この「MainForm」をすきなだけ広げて、図のように各種のコントロールを配置して完成をめざします。

図:「MainForm」と各コントロールの配置


フォームデザイナーを使ってコントロールの配置とプロパティ設定の手順。
⬇︎
プロジェクトウィンドウの「ツール」タブのクリックでツールボックスが開きます。
この場合当然のことですが、コードウィンドウにMainForm(デザイン)が表示されていないと、「ツール」タブ はアクティブになりませんので注意。
ツールボックスとは、当初からコンポーネントが格納されているボックスのことで、同領域に表示します。

ツールボックスが空の場合の対策

このツールボックスには、ダウンロードしたSharpDevelopに当初から汎用的なコンポーネントが設定されてい ます。ところが操作で開いたツールボックスのなかが空の場合があります。
これではこまるのでユーザー側で対処。以下の手順でコンポーネントを取り込みます。

𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠𓇠

「ツール」タブをクリック。
⬇︎
➤ 領域内で右クリック。 ➤ 「サイドバーの構成」を選択。
➤ 「新規」ボタンクリック。 ➤ カテゴリ名にここではWindows Formsと入力。 ➤ OK。 
➤ カテゴリ枠にWindows Formsが設定。左クリック。 ➤ 「コンポーネントを追加」ボタンクリック。
➤ GACタブ枠内に.NET Framework環境で共有されるコンポーネント群が表示。この中から「System.Windows.Forms 4.0.0.0 」を選択して、右枠に名前・名前空間・アセンブリが表示のコンポーネントを選択します。OKボタンクリック。
➤ これでWindows Formsにコンポーネントが設定されます。OKボタンクリックで完了。

この他に同操作で、カテゴリ名をDataとしてGACから「System.Data 4.0.0.0」のアセンブリも取り込んでおきます。

⬇︎

ここで使う主なツールは、「Windows Forms」と「Data」の二つ。
コントロールを選択して図のように空の「MainForm」の中に、ドラッグ&ドロップで配置します。
⬇︎
配置したコントロールには名前や動作等の設定を、プロパティウィンドウから行います。
プロパティウィンドウはコントロール上をクリックすると開きます。
ここで使用する主なプロパティ。
Appearance  ➱ コントロールの名称や装飾等の設定。
Behavior    ➱ デフォルトのままで。必要に応じてプログラムで変更します。
Design(name) ➱ プログラムで操作するコントロールの名前。英数字で先頭文字はなるべく半角で。

コントロールの名前はシステム側で自動付与しますが、ここでは下記に示したソースコードのように変更をしました。

コントロールの配置はフォームデザイナーを使うことで、視覚的に効率よく行うことができましたが SharpDevelopは当然、コードの記述のみでもフォームやコントロールを作ることもできます。

これでフォームのデザインは終了。保存(Ctrl+S)。

完成したソースコードを確認します。
コードウィンドウの「ソース」タブ押下で表示。
フォームデザイナーによって生成した、MainFormクラスのコントロール名と、その変数名です。
〚MainForm.Designer.cs〛

using System;
using System.Windows.Forms;
 
namespace CrudSampleApp
{
    partial class MainForm
    {
       /// 
       /// Designer variable used to keep track of non-visual components.
       /// 
       private System.ComponentModel.IContainer components = null;
       private System.Windows.Forms.Label label1;
       private System.Windows.Forms.Label label3;
       private System.Windows.Forms.TextBox nameBox;
       private System.Windows.Forms.TextBox addressBox;
       private System.Windows.Forms.Button entry;
       private System.Windows.Forms.Button update;				
       private System.Windows.Forms.Button delete;
       private System.Windows.Forms.DataGridView dgv;
       private System.Windows.Forms.Label label5;
       private System.Windows.Forms.Label label6;
       private System.Windows.Forms.Label label7;
       private System.Windows.Forms.TextBox cleated_atBox;
       private System.Windows.Forms.TextBox updated_atBox;
       private System.Windows.Forms.Button exit;
       private System.Windows.Forms.Button clear;
       private System.Windows.Forms.Label label8;
       private System.Windows.Forms.TextBox guidBox;
       private System.Windows.Forms.Label label10;
       private System.Windows.Forms.TextBox allRecCountBox;
                            ⠸
                           省略
                            ⠸
   }
}	
Search
Google
⬆ このページの先頭へ