簡體   English   中英

這樣做更有效的方法? (ASP.NET文本框)

[英]More efficient way of doing this? (ASP.NET textboxes)

我在ASP.NET頁中使用向導,在第一步中,用戶從DropDownList中選擇,下一向導步驟(從1-5)將顯示多少組控件。

例如,在向導的第二步中,有3個文本框。 如果他們在上一個屏幕上選擇2,則將有6個,因為它們將有2套。

我需要能夠將所有這些文本框的內容存儲在數據庫中(我認為這很簡單,有5列,並且所有列都可以為null。

我認為最簡單的方法就是創建所有可能的控件(5套),然后根據它們在上一屏幕中選擇的內容將其隱藏。 有沒有更有效/更簡便的方法?

謝謝

這實際上取決於您對高效/簡便的定義。
一種更標准的方法是使用轉發器控件根據以前的輸入顯示正確數量的控件。 但是,如果您以前沒有使用過中繼器控件,則在回發期間顯示輸出和檢索用戶輸入將涉及一定程度的學習。

您可以使用ASP.NET向導控件

如果您絕對知道最多5個框,並且使用Control.Visible在服務器控件及其接口項(例如label或其他任何控件)上工作的可能性不大可能超過... 但...

但是,這有點脆弱。 如果您決定添加更多可能的框,則需要在一些地方進行手動代碼更改。

動態解決方案可以讓您在config中設置最大數量的選項,或者在代碼中僅設置一個位置。 可能需要您稍微更改數據庫結構,但是無論如何,這對於標准化來說可能會更好。 它還涉及在向導步驟中動態生成項目。

(如果需要,可以提供有關該選項的更多信息!)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM