はじめに
本連載では,
前回は,
単純にC#に移植したコード
なるべくVB6のコードに近い形で移植しました。
各メンバ名,
まずは,
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb; // 追加
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
//*************************************************************
/// <summary>電話帳サンプルソフトフォーム</summary>
//*************************************************************
public partial class Form1 : Form
{
private OleDbConnection dbConnection;
private const string FILENAME = @"c:\Database.mdb";
//*************************************************************
///<summary>コンストラクタ</summary>
//*************************************************************
public Form1()
{
InitializeComponent();
}
//*************************************************************
// イベント処理用メソッド
//*************************************************************
private void addButton_Click(object sender, EventArgs e)
{
if (!AddLogic()) return;
ClearData();
}
private void closeButton_Click(object sender, EventArgs e)
{
Close();
}
private void Form1_Load(object sender, EventArgs e)
{
ConnectDatabase();
codeTextBox.Text = "";
ClearData();
}
private void Form1_FormClosed(
object sender, FormClosedEventArgs e)
{
CloseDatabase();
}
private void readButton_Click(object sender, EventArgs e)
{
ReadLogic();
}
private void updateButton_Click(object sender, EventArgs e)
{
UpdateLogic();
}
private void deleteButton_Click(object sender, EventArgs e)
{
if (!DeleteLogic()) return;
ClearData();
}
//*************************************************************
/// <summary>名前と電話番号の表示をクリアします</summary>
//*************************************************************
private void ClearData()
{
nameTextBox.Text = "";
telephoneNumberTextBox.Text = "";
}
//*************************************************************
/// <summary>Code プロパティ</summary>
/// <remarks>CodeTextBox.Text に入力されている値です</remarks>
//*************************************************************
private int Code
{
get
{
int r = 0;
if (int.TryParse(codeTextBox.Text, out r)) return r;
return 0;
}
set
{
codeTextBox.Text = value.ToString();
}
}
//*************************************************************
/// <summary>追加処理を実行します</summary>
/// <returns>結果 [True:成功 / False:失敗]</returns>
//*************************************************************
private bool AddLogic()
{
if (InvalidCode(Code))
{
MessageBox.Show("追加できませんでした");
return false;
}
AddRecord(Code);
return true;
}
//*************************************************************
/// <summary>更新処理を実行します</summary>
/// <returns>結果 [True:成功 / False:失敗]</returns>
//*************************************************************
private bool UpdateLogic()
{
if (InvalidCode(Code))
{
MessageBox.Show("更新に失敗しました");
return false;
}
UpdateRecord(
Code, nameTextBox.Text, telephoneNumberTextBox.Text);
return true;
}
//*************************************************************
/// <summary>削除処理を実行します</summary>
/// <returns>結果 [True:成功 / False:失敗]</returns>
//*************************************************************
private bool DeleteLogic()
{
if (InvalidCode(Code))
{
MessageBox.Show("削除に失敗しました");
return false;
}
DeleteRecord(Code);
return true;
}
次ページへ続く