删除未使用的标记而不是隐藏在ASP.NET中

时间:2015-09-01 23:50:19

标签: c# html asp.net

当我们在ASP.NET中设计页面时是否可以从代码隐藏中删除未使用的控件而不是隐藏它们?因为,将它们隐藏在代码隐藏之后会使它们不可见,但不会完全删除,从而导致用户屏幕上出现空白。

例如: -

<td>
<uc1:GoToRequestControl id="UserControl" runat="server" />    

我们尝试按如下方式显示/隐藏Codebehind形式

if (Condition)
{
    UserControl.Visible = false;
}

这会隐藏控件,但此控件的空间会保留在Page上。有没有办法我们可以删除这些隐藏控件的whitespacing并使页面看起来更好?我们使用表来定义布局,这是上述行为的原因吗?

1 个答案:

答案 0 :(得分:0)

确实设置var temp2 = await (asyncDict.GetOrAdd(1,valueFactoryAsync)).ConfigureAwait(false);将不会为该控件呈现任何内容,控件周围的空格(和其他文本)不是控件生成的标记的一部分,因此将继续呈现。

但是,除非您具有使空白可见的CSS规则设置,否则空格不应对Web用户代理(即浏览器)有意义。

创建或修改CSS规则以更改Control.Visible = false;white-space的配置方式,以便额外空格的效果无效。

另一种选择是简单地删除控件周围的空格:

line-break

变为:

<pre>

<asp:Label runat="server" />

</pre>