2012-04-26 103 views
1

我想知道是否有訪問到ASP對象後面的代碼的方式,但沒有自己使用對象?如何訪問ASP對象

讓說,我有一個ASP頁中,我有這樣的標籤:

<asp:TextBox ID="test" runat="server"></asp:TextBox> 

在我後面的代碼我可以訪問使用對象:this.test。但我想以其他方式訪問它。喜歡的東西:

this.Objects["test"] 

因爲我解析其中我有我所有的ASP對象,然後我想要做一些關於它的處理XML文檔(可見設置爲true ...)

你有什麼主意嗎 ?

謝謝

找到了答案。我使用SharePoint,所以我必須設置上下文。我不能做

this.FindControls 

,所以我說:

Control context = this.Page.Master.FindControl("PlaceHolderMain"); 

我用:

context.FindControl(); 
+0

你應該從你的問題的答案變成自己的答案移動文本。那麼你應該在2天限制後接受你自己的答案。這是標準做法。 – skeletank 2012-04-26 13:08:32

+0

啊,我知道,但我不能回答自己爲六下一小時... – 2012-04-26 13:31:09

+0

對不起,我不知道8小時時間限制爲用戶提供口碑<100自答案(HTTP的://meta.stackexchange。 COM /問題/ 86185 /最小聲譽換回答,你自己的問題,應待高比乜是/ 86186#86186)。 – skeletank 2012-04-26 14:04:16

回答

2

You coul d使用:

this.Controls["control"]; 
+0

感謝名單,它的工作原理 – 2012-04-26 11:23:00

+0

嘿,它不工作,你必須使用控件時,使用int指數[] – 2012-04-26 11:54:04

1

當你處理服務器端控制你使用Page.FindControl可以訪問它們( controlName):

this.Page.FindControl("txtPageSam").Visible = false; 
+0

實際上它不起作用。 它返回null 是否有可能是因爲我使用多視點? – 2012-04-26 11:52:31

1
((TextBox) this.FindControl("test")).Visible = true; 
+0

嘿,它返回null,我... – 2012-04-26 11:56:06

+0

如果你的文本框裏面的一些其他控件,你必須使用該控件的Findcontrol方法。在頁面lavel文本框不能被id「test」識別。 – userGS 2012-04-26 12:32:48

+0

是的謝謝,我更新了我的問題,我找到了答案;) – 2012-04-26 12:48:39