2009-10-02 65 views
1

如果使用雙向綁定(例如Text ='<%#Bind(「FieldName」)%>')綁定FormView中的控件,如何檢索字段名稱「字段名「?我想用這些信息做幾件事情;例如,我有一個數據庫表,其中包含ERWin所有字段定義的轉儲,並且我想以編程方式爲每個字段創建某種類型的上下文相關幫助(在幾十個表單中有數百個分佈)。在運行時獲取綁定字段名

這幾乎是a question asked a year ago的確切副本,但答案對我沒有多大意義。首先,答案似乎是用於GridView,而不是FormView(e.Row.Cells [0])。其次,SortExpression與什麼有關?第三,它提到了事件論證,但是對於什麼事件呢?在OnDataBound中,EventArgs e是空的。

+0

嗨pjabbot - 哪裏(意味着你的頁面或其控件的事件處理程序或現有方法)是否要檢索字段名稱?在某些情況下可能會獲得字段名稱,但在其他情況下可能不會。您是否可以發佈一個簡單的代碼示例,顯示您想要執行的操作的示例,以及您想要提取字段名稱的代碼的佔位符?鑑於上下文,幫助您填寫該佔位符會更容易。 – 2009-10-19 05:56:30

+0

上面提到了我想要做的一個例子 - 我有一個我從ERWin中導出的屬性定義表。我想獲取formview上每個綁定控件的綁定字段名稱,然後以編程方式將工具提示分配爲屬性的定義。這樣,當某人懸停在「託管關閉日期」文本框上時,會出現一個工具提示,其中顯示「由代理機構確定的關於該物業的日期託管關閉」。在這一點上,我願意接受頁面生命週期中任何地方的答案。 – 2009-10-19 17:01:35

回答

1

似乎沒有辦法從FormView獲取此信息,因爲列名未存儲在您想要的級別。

但是,我必須承認,我不明白爲什麼你想在運行時檢索你在編譯時知道的東西。爲什麼不可能只寫你需要的代碼?即使你希望你的代碼更通用,你也可以創建一個控制名字典和它們相關的綁定列名字的字典,傳遞給你的類,它可以做任何它需要做的事情。

關於最後一個問題的答案--GridView將列名稱存儲在SortExpression屬性中,以便它知道用戶訪問網格時要排序的列。因此,在GridView中,可以通過SortExpression訪問列名。

+0

我可能不得不求助於創建字典,但這是一個包含大約三十個Web表單,數百個表格和數千個字段的應用程序。只需要將字段名稱與控件名稱鏈接起來所需的所有打字工作都需要花費很長時間,然後我還會有另一個數據結構來維護。我希望有一個簡單的出路。 – 2009-10-19 17:07:49

+1

您可以編寫一個快速的Python腳本來翻閱您的ASPX文件併爲每個頁面生成所需的代碼。 – 2009-10-19 17:35:36

+0

+1 Jason。解決代碼問題正是編程所關心的。 – 2009-10-20 02:43:37

0

這樣做的一個簡單方法是以編程方式將數據字段的名稱分配給Formview控件的Tooltip屬性,然後當用戶將鼠標懸停在這些控件上時,數據字段名稱將顯示給用戶。如果您想要更具體的答案,請說明這是您要完成的任務。

+0

我想要完成的是第一段的第一句 - 在運行時獲取雙向綁定字段的名稱。其餘的只是我打算在獲得該字段後用字段名稱做的一個例子。 – 2009-10-02 21:57:41