我正在做一個vb.net項目,我在代碼隱藏文件(* .vb)中找不到一些控件。我想知道是因爲我在page_load函數中工作,所以控件在page_control事件之後才加載。但是我可以通過formview目標的findcontrol函數找到它們。代碼後面的控制
代碼後面的控制
回答
的控制將在同一溶液中的局部類的一部分。只需找到您的班級名稱的所有參考。
你檢查了InitializeComponent()的內容嗎? – 2009-10-19 21:53:33
什麼文件再次包含該功能?我曾經在一個C#項目中看到它。不在我目前的VB項目。 – 2009-10-19 22:04:25
我偶爾會遇到將控件添加到頁面而智能感知不能識別控件的問題。編譯器似乎也無法識別該控件並阻止編譯該項目。這可能是非常令人沮喪的,我真的不知道爲什麼。
有時,它有助於關閉aspx頁面和代碼文件,有時關閉Visual Studio和重新打開它的工作原理。有時候它們都不起作用,我只是嘗試另一種方式來完成任務。
我不知道這是否是您遇到什麼,但即便如此,它絕對可以讓你從頭開始你的頭,不知道是怎麼回事。
試圖關閉VS網站。沒有工作。 – 2009-10-19 22:05:48
如果這些控件是在aspx中聲明的,那麼它們就是在您的Page類的部分類中定義的。 這是與.Net v2.0一起引入的,因此與設計師混淆不會讓你的代碼隱藏在文件後面(這在某些情況下導致了很多問題)。
您可以從頁面加載事件訪問控件。有時候智能感知會對你起詭計,並沒有提示控制權。只需輸入它即可。您可以關閉aspx頁面並再次打開。有時候會修復它。或者只是重新啓動Visual Studio,如果你感到惱火。
然而,有幾個方面的考慮,如果你有興趣在頁面的生命週期期間訪問在特定的時間控制數據。 服務器控件都有自己的生命週期,它類似於頁面生命週期,但在該事件被觸發的控制順序如下:
Init
和Unload
事件控制之前發生該事件是爲容器提出的(自下而上)。Load
事件用於控制發生後的事件引發的容器(自上而下)。
您可以找到Page life cycle events on MSDN的更詳細的解釋。模板(如您的FormView控件,或在GridView)內
這很讓人困惑。澄清,Init和Unload事件發生在直接父容器的init和unload事件發生之前,像formview一樣? – 2009-10-19 22:09:58
這是正確的。因此,如果您在頁面上有標籤,則會首先在您的標籤上觸發Init事件,然後在您的頁面上觸發。 – 2009-10-19 22:12:35
控件是不是在後面的代碼直接訪問。您必須使用FindControl才能訪問這些控件。
是有原因的嗎? – 2009-10-19 22:15:29
我不確定爲什麼FormView以它的方式工作,但對於GridView而言,控件存在於每一行中,因此頁面上實際上有多個版本的控件。因此,您必須在適當的容器上使用FindControl以在運行時查找控件。 – 2009-10-19 22:19:32
未來感謝你。 – 2012-01-04 22:12:06
很難說出究竟是什麼問題;如果你可以在這裏發佈一些代碼,這將有所幫助。
我有兩個猜測/建議:
如果您有brentkeller被描述問題,什麼通常被完全修復了這個對我來說是刪除aspx.designer.cs文件,然後右鍵單擊在.aspx文件上並選擇「轉換爲Web應用程序」。這將重新創建設計器文件。
該控件位於像Jason Berkan建議的模板內。例如,如果它在LoginView中,則可以在LoginView上使用.FindControl(「controlId」)。
- 1. 用戶控制後面的代碼
- 2. 調用webbrowser控制asp.net頁面錯誤後面的代碼?
- 3. 引用C#控制在另一個類的後面的代碼
- 4. WPF在ViewModel後面的代碼綁定動態控制
- 5. Asp.net主頁控制動態通過後面的代碼
- 6. php&lighttpd代碼後面的機制?
- 7. 在代碼後面調用HTML控件
- 8. 如何控制代碼背後的控制位置
- 9. 移動代碼後無效的源代碼控制綁定
- 10. 在後面的代碼中訪問頁面佈局的控件
- 11. 控制VS代碼
- 12. 控制從代碼
- 13. Ajax代碼控制
- 14. JQuery的 - 後面的代碼
- 15. javascript代碼後面的值
- 16. 代碼後面的HTML
- 17. filesystem.normalize後面的代碼
- 18. Api後面的代碼
- 19. 邏輯後面的代碼
- 20. 如何訪問動態創建的HTML控制從後面的代碼在asp.net
- 21. 後面的ASP.net代碼生成的網頁用戶控制不傳遞值
- 22. 通過HTML代碼控制python代碼
- 23. 如何在子代碼後面的代碼中替換父控件的內容
- 24. 訪問在用戶控制代碼後面的aspx頁面中使用的用戶控件ID
- 25. 用戶控制已註冊但無法通過後面的代碼訪問
- 26. 如何在後面的代碼中添加兩個CSS類來控制?
- 27. 從頁面控制器轉換到前端控制器的友好代碼
- 28. 從後面的代碼引用XSL模板中的控件?
- 29. 如何訪問後面的代碼中的控件
- 30. 文件後面的代碼無法識別* .ascx中的控件
請提供您的aspx文件和代碼隱藏示例。 – Restuta 2009-10-19 21:47:22
它確實是通用的。 aspx文件中的asp文字,我在vb文件的page_load函數中查找它 – 2009-10-19 22:07:06