我正在爲Windows應用程序編寫一些代碼,除了IntelliSense在某些點擊事件範圍內不提供選項以外,事情還會繼續。令人驚訝的是,當我在沒有它的幫助的情況下對其進行編碼時,它不會在該行代碼中給我任何紅色的波浪曲線,所以我認爲範圍是確定的。智能感知不起作用
我有兩種形式,FormA
和FormB
,在FormA
一個按鈕單擊事件應該觸發FormB
其文本框裝滿它運行附加邏輯後收到的信息。如何我做的是
formSrchResult.txtSearchFirstName.Text = searchedInfo.FirstName;
formSrchResult.txtSearchLastName.Text = searchedInfo.LastName;
formSrchResult.txtSearchUsername.Text = searchedInfo.UserName;
formSrchResult.txtSearchEmail.Text = searchedInfo.Email;
formSearchResult
是FormSearch(FormB)
和searchedInfo
的對象是一個類的對象具有的屬性存儲數據,這是我想在FormSearch
文本框來顯示。無論是FormSearch
和searchedInfo
被聲明爲public,但是當我開始打字
「formSrchResult。」 +「ctrl + space」
智能感知不會給我帶有文本框和屬性名稱的列表。所以,我想知道是否有人會對可能導致這種情況的任何想法有所瞭解,我很想知道。順便說一下,它的Visual Studio 2012.
謝謝。
public class UserInfo
{
public int UserID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Email { get; set; }
public string UserName { get; set; }
}
這是將存儲搜索到的信息和下面是搜索方法的代碼類...
public UserInfo Search(string email)
{
UserInfo searchUserInfo = new UserInfo();
try
{
conn.Open();
SqlCommand cmd = new SqlCommand("spListEverything", conn);
cmd.CommandText = "spListEverything";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@Email", email);
SqlDataReader rdrSearch = cmd.ExecuteReader();
if (rdrSearch.Read())
{
//why do we need to convert the first name, last name etc to ToString
//when they are defined, in the database, as a string itself?
searchUserInfo.UserID = Convert.ToInt32(rdrSearch["UserID"]);
searchUserInfo.FirstName = rdrSearch["FirstName"].ToString();
searchUserInfo.LastName = rdrSearch["LastName"].ToString();
searchUserInfo.UserName = rdrSearch["UserName"].ToString();
searchUserInfo.Email = rdrSearch["Email"].ToString();
}
else
{
// "Sorry, no match found";
}
}
catch (Exception ex)
{
}
finally
{
conn.Close();
}
return searchUserInfo;
}
下面是我對btnClick事件,其中智能感知沒有幫助
編碼private void btnSearch_Click(object sender, EventArgs e)
{
string email = txtSearchEmail.Text.ToString();
Manage myManage = new Manage(); //to call the search function
FormSearchResult formSrchResult = new FormSearchResult();//to put the vlaues in the textboxes in that form
UserInfo searchedInfo = myManage.Search(email);
//the search function is not working properly. No value is returned to be stored
//in the userInfo object
//Here for some reason my intellisense is not providing options.
formSrchResult.txtSearchFirstName.Text = searchedInfo.FirstName;
formSrchResult.txtSearchLastName.Text = searchedInfo.LastName;
formSrchResult.txtSearchUsername.Text = searchedInfo.UserName;
formSrchResult.txtSearchEmail.Text = searchedInfo.Email;
txtSearchFirstName.Enabled = false;
formSrchResult.ShowDialog();
}
不要僅僅依靠intellisense來假定範圍是正確的。嘗試編譯該項目並檢查可能的錯誤。 – 2013-04-10 17:55:41
您嘗試訪問的屬性或字段的訪問級別是什麼?也許如果你要顯示實際的類定義,它將有助於解決你面臨的這個問題\ – MethodMan 2013-04-10 17:59:42