C# Tips


入力値のチェックをするには


入力値のチェックをするには、いろいろな方法がありますが、ErrorProviderを使うとユーザーインターフェイス的にも親切なものになります。

1. TextChangedイベントをトリガーにします。
2. 入力した内容が有効でないときは、ErrorProviderを利用してエラーを表示します。
3. 入力した内容が有効なときは、エラー表示を消します。

ErrorProviderのSetError()メソッドは、最初の引数が対象のコントロール、2つ目の引数がエラーメッセージです。
2つ目の引数にnullを設定すると、エラー表示が解除される仕組みになっています。
private void textBoxProjectName_TextChanged(object sender, System.EventArgs e)
{
	ValidateProjectName();
}

private bool ValidateProjectName()
{
	if(this.textBoxProjectName.Text == "")
	{
		//エラー表示
		this.errorProvider.SetError(this.textBoxProjectName, "Please input project name.");
		this.buttonOk.Enabled = false;
		return false;
	}

	if(Directory.Exists(this.textBoxProjectName.Text))
	{
		//エラー表示
		this.errorProvider.SetError(this.textBoxProjectName, "The project name already exists.");
		this.buttonOk.Enabled = false;
		return false;
	}

	//エラー取り消し
	this.errorProvider.SetError(this.textBoxProjectName, null);
	this.buttonOk.Enabled = true;
	return true;
}


目次に戻る
Copyright(c) 2008 WoodenSoldier Software