asp.net Panel控件和Div控件的区别

qf9go6mv  于 2022-11-19  发布在  .NET
关注(0)|答案(3)|浏览(305)

我想知道www.example.com中的Panel控件asp.net和runat="server"中的div有什么区别?因为两者都呈现为div
哪一个是最好的(条件)?

66bbxpm5

66bbxpm51#

该代码

<asp:Panel id="abc" runat="server">

和你做的完全一样

<div id="abc" runat="server">

它们呈现相同的内容,但Panel最常用的是其他WebControls的功能,并且Panel web控件在代码隐藏下提供更多控制,因为它公开了更多属性。

c90pui9n

c90pui9n2#

不同之处在于Panel是一个webcontrol,它将在代码隐藏文件中给予比div更多的属性,因为它是一个webcontrol,它将需要更多的处理来生成HTML。
面板控件具有viewstate属性,而div没有。
这取决于你的用法。如果你更喜欢控制更多的属性,那么就使用面板控件,否则就使用div控件。

nx7onnlm

nx7onnlm3#

我发现最有用的区别是;一个div,即使使用runat=server也不会在页面服务器之间保存对其样式的更改。这让我抓狂,我有一个div保存了一个弹出aspx屏幕的iframe。我希望这个弹出窗口在用户使用完它后关闭,方法是通过javascript将可见性设置为none。我发现它总是重复出现,即使我试图在每个页面服务器的代码后面为保存页面Assert可见性。
然后我切换到使用asp:panel,因为它的视图状态,你设置它的可见性,它保持这种方式通过多个页面服务,直到你再次改变它。干净得多。你仍然可以应用css样式到该面板,就像一个div,但它更好的'表现'

相关问题