我有一个网站,它是代码几乎可以生成页面上的所有内容。主页由正在通过代码构建的右侧菜单组成。它使用System.Web.UI.WebControls.TableCell类并为每个新项目创建一个td。System.Web.UI.WebControls.TableCell的替代方案
下面是代码的一个片段:
Public Sub BuildMainMenuStructure(ByVal Cell As TableCell, _
ByVal Contents As DataTable, _
ByVal ReadMode As Boolean, _
ByVal CurrentPage As String, _
ByVal RecSecurity As ApplicationRoleSecurity, _
ByVal SourcePageRef As Integer, _
ByVal IncludeMyIntranetPanel As Boolean)
'-----------------------------------------------------------------
'Div1 Contents
'-----------------------------------------------------------------
'Set up the contents in a div (panel) called pnlMainMenu1
Dim mmContents As New MainMenuContents
mmContents.ID = "pcaMainMenuContents"
mmContents.SetControl(Contents, _
ReadMode, _
CurrentPage, _
RecSecurity, _
SourcePageRef)
mintContentsCount = mmContents.Count
Dim pnlMainMenu1 As New Panel
With pnlMainMenu1
.ID = "pcaMainMenuContentsPanel"
'By default, this panel is visible:
.Style.Add("visibility", "visible")
.Controls.Add(mmContents)
End With
在代码另一区域产生网页的不同部分:
If IncludeMyIntranetPanel And ReadMode Then
'Set up the contents in a div (panel) called pnlMainMenu2
Dim mmMyIntranet As New MainMenuMyIntranet
mmMyIntranet.ID = "pcaMainMenuMyIntranet"
mmMyIntranet.SetControl(Contents, _
ReadMode, _
CurrentPage, _
RecSecurity, _
SourcePageRef)
Dim pnlMainMenu2 As New Panel
With pnlMainMenu2
.ID = "pcaMainMenuMyIntranetPanel"
'By default, this panel is visible:
.Style.Add("visibility", "visible")
.Controls.Add(mmMyIntranet)
End With
'Add it to the cell:
Cell.Controls.Add(pnlMainMenu2)
End If 'End If IncludeMyIntranetPanel
及其添加经由Cell.Controls的内容。添加(pnlMainMenu2)
我的任务是尝试重新覆盖主页。理想情况下,我想生成DIV类,以便轻松定位内容。
是否有一个.net类,我可以使用它从数据库中抓取数据并创建div类?
我在那里有点罗嗦,但我觉得我应该重申:既不是面板控制也不是文字控制有任何形式的数据库交互内置;你需要做你的数据库的东西,并通过代码隐藏添加输出。此外,Panel控件实际上并不采用文字,与TableCell不同 - 是的,它会输出DIV,但您需要添加一个Label或HyperLink等控件来实际输出文字。 – 2012-03-02 16:27:39
看到我正在使用的网站的问题是一切都是数据库/代码生成。我不认为开发人员知道哪些样式表在哪里!有关于“重新剥皮”主页的讨论,但很多“东西”仍在继续,所以它不是用新设计剥离主页的情况。 – 2012-03-02 16:36:39