我正在練習使用Hashtable的電話簿示例。訪問類方法的問題
我有一個類有2個簡單的方法,不知何故,如果我使用我的表單方法訪問類,我將無法獲得搜索結果,但如果我在類內調用它,我能夠,我已經添加了一個計數來檢查pPhonebook中是否有任何項目,並且在外部訪問時總是爲0,欣賞是否有人能指出我的錯誤,是否與我的Hashtable聲明有關?謝謝。
public class Phonebook
{
public Hashtable pPhoneBook = new Hashtable();
public void AddContactInfo(string perName, string perContact)
{
pPhoneBook.Add(perName, perContact);
SearchContactInfo(perName); // This is okay
}
public void SearchContactInfo(string perName)
{
MessageBox.Show(pPhoneBook.Count.ToString());
if (pPhoneBook.ContainsKey(perName))
{
string value = (string)pPhoneBook[perName];
MessageBox.Show(value);
}
else
{
MessageBox.Show("Not Found");
}
}
形式:
private void txtSearch_Click(object sender, EventArgs e)
{
if (textBox3.Text != "")
{
Phonebook pB = new Phonebook();
pB.SearchContactInfo(textBox3.Text); // Not Okay
}
else
{
MessageBox.Show("Please fill in the Name field");
}
}
private void txtAdd_Click(object sender, EventArgs e)
{
if (textBox1.Text != "" & textBox2.Text != "")
{
Phonebook pB = new Phonebook();
pB.AddContactInfo(textBox1.Text, textBox2.Text);
textBox1.Text = "";
textBox2.Text = "";
}
else
{
MessageBox.Show("Please fill in both Name and Contact field");
}
}
現貨!謝謝。 – k80sg 2011-05-06 11:02:48