2010-03-23 71 views
1

我有一個ListView。如果我想將html標記基於數據綁定項的條件,那麼最好的方法是什麼?aspx中的條件標記

我的意思是,是否有任何其他方式,然後把<%> if/else塊直接在標記中?我知道一個非常醜陋的做法是將數據庫字段中的HTML標記,並讓Eval()擠出適當的標記(我而不是這樣做)。

我想避免在代碼中添加實際的<%%> C#代碼塊。

任何好主意?

編輯:我正在考慮讓3個不同的asp:面板設置可見:false,然後在listview的數據綁定事件中,設置適當的面板可見:true根據條件 - 任何人有任何設計意見關於這個想法?

回答

0

解決...

結束了3個面板,然後檢查ItemDataBound事件的條件......

我還是想對這個解決方案的設計影響,雖然意見。

+0

我認爲在標記中使用<% %>代碼塊比在後面的代碼中使用簡單的「標記」邏輯要乾淨得多。像JavaScript一樣,將此代碼視爲標記代碼。我通常會使用一個非常簡單的代碼與三元運算符來爲我的標記獲取可見或不可見的類。您也可以使用它來輸出條件標記。如果事情開始變得越來越複雜,那麼你可以編寫一個代碼隱藏函數並調用它。 – Loudenvier 2013-07-30 15:51:36

0

覆蓋其中一個listview「單元格」的「渲染」事件應該做的訣竅。考慮到替代方案,編寫自己的條件標記代碼並不是那麼糟糕。

但是請儘可能使用CSS作爲頁面的真實構成。