我想我可能在使用其他設備時使用了中繼器,因此我已經準備好將其設置爲設計,但我想檢查與改變這個之前的發展社區。從代碼隱藏的代碼中找出使用Repeater創建的標記中的控制值
我還應該說,我在aspx頁面的自定義用戶控件中使用此中繼器控件。
我的情況是,當用戶選擇一個項目時,我必須動態顯示附加部件的列表。這與您在網上結帳時有時會看到的「您可能還有興趣」列表類似。
因此,用戶可以從下拉列表中選擇要訂購的項目,最多可以添加4個附加部件。
目前,我正在將可選部件列表放入數據對象的通用列表中,並將其綁定到中繼器控件及其文本框。文本框基本上在一個框中列出部分描述,並且用戶可以在另一個文本框中輸入他們想要的項目數量的選項。
這一切都很好。
所以要清楚的是,在中繼器控件加載所有內容並呈現表單後,用戶可以在數量文本框中鍵入值。
因爲這都是用戶控制,所以我正在編寫一個方法來收集所有這些信息,填充一個業務對象,並將它返回給它的任何調用。
我無法找到自動生成的文本框,所以我可以檢索它們的值。
我有這種偷偷摸摸的嫌疑,我在做一些明顯錯誤的設計。所以我想通過蜂巢式的思維來看看別人怎麼看:)
這是我的標記,由中繼控制器生成。
<div class="base-container-controls-75pct">
<div class="base-container-controls-98pct">
<div class="base-container-controls-75pct">
<input name="DownLoadItem1$UxAdditionalParts$ctl01$UxItemNumber" type="text" id="DownLoadItem1_UxAdditionalParts_ctl01_UxItemNumber" class="textbox-readonly-xl" />
</div>
<div class="base-container-controls-10pct">
<input name="DownLoadItem1$UxAdditionalParts$ctl01$UxQuantity" type="text" value="3" id="DownLoadItem1_UxAdditionalParts_ctl01_UxQuantity" class="textbox-md" />
</div>
</div>
... more repeating code here, basically the 98pct div above is repeated for each "row" ...
</div>
我最終將EnableViewState =「True」添加到中繼器的標記中,然後我可以通過控件循環。我會盡快發佈解決方案代碼:) – 2012-03-14 18:49:26