2012-11-01 74 views
0

我試圖訪問detailview中的字段並將其顯示在標籤中。請注意,我已將該字段轉換爲templdate字段。我沒有在輸出標籤中找到任何東西。我在這裏做錯了什麼?感謝如何在DetailView中獲取字段值

if (this.DetailsView1.DefaultMode == DetailsViewMode.Edit) 
     { 

      { 
       TextBox dv = this.DetailsView1.FindControl("ID") as TextBox; 
       // dv.Text = "RCA Assigned"; 
       Session["MySessionVar"] = dv; 
       OutputLabel.Text = (string)Session["MySessionVar"]; 
      } 
     } 

     else 
     { 
      TextBox dv = this.DetailsView1.FindControl("ID") as TextBox; 
      OutputLabel.Text = (string)Session["MySessionVar"]; 
     } 
+0

你的領域是什麼? ID(文本框)或mySessionvar? – Sami

回答

0

這裏有幾個問題:

你存儲整個文本框(DV)的會議。然後你試圖把它轉換成一個字符串。

相反,你應該做的:

Session["MySessionVar"] = dv.Text; 

含義的字符串會從一開始就(盒裝爲對象,因此需要當你再次把它弄出來投回字符串)存儲在會話。 但是,你爲什麼要使用Session?如果您只是想文本框的內容出現在OutputLabel那麼這應該做的伎倆:

TextBox dv = this.DetailsView1.FindControl("ID") as TextBox;  
OutputLabel.Text = dv.Text; 

但標籤的內容只會被每個頁面由Web服務器提供服務的時間填滿。如果您希望在編輯TextBox內容時動態更改標籤的內容,則需要查看某種JavaScript的客戶端解決方案。

這真的取決於你想要在這裏實現什麼。你能否在這個問題中提供更多的背景細節?

+0

謝謝,我已經改變,仍然輸出標籤顯示沒有ID。 – moe

+0

好吧,我已經完成了你的建議,我沒有使用任何會話,但現在得到這個錯誤:「對象引用未設置爲對象的實例」謝謝 – moe

+0

所有我想要做的,以訪問詳細信息視圖中的ID和在我創建的標籤上顯示它。這就對了。謝謝 – moe

相關問題