什么时候需要.ascx文件,以及如何使用它们?


88

建立网站时,什么时候使用.ascx文件是一个好主意?.ascx到底是什么?它的作用是什么?示例将非常有帮助!

Answers:


97

它是项目中用户控件的扩展。

用户控件是一种类似于ASP.NET网页的复合控件,您可以将现有的Web服务器控件和标记添加到用户控件,并定义控件的属性和方法。然后,您可以将它们嵌入ASP.NET网页中,作为它们的整体。

简而言之,如果您想在项目的许多页面上使用某些功能,则应创建一个User控件或Composite控件,并在页面中使用它。它只是帮助您将相同的功能和代码放在一个地方。而且它可以重用


12

当我们必须在应用程序的不同位置上使用相似的功能时,我们基本上使用用户控件。就像我们使用母版页来使应用程序具有一致的外观和感觉一样,为了避免在整个应用程序中重复相同的功能和UI,我们使用用户控件。我可能还会有更多用法,但是我只知道这一用法...

例如,假设您的网站有4个用户级别,并且每个用户在不同目录下的不同页面具有不同的访问机制。假设您要为所有用户请求地址信息,然后在每个页面上创建地址字段,例如街道,城市,州,邮政编码等。那将是重复的工作。相反,您可以将其创建为ascx文件(用于用户控件的ext),并在该控件中放置用于添加/更新/删除/选择地址角色的必要的UI和业务代码,然后简单地引用所有必需的页面。

因此,考虑到用户控件,可以避免每个角色的代码重复和每个角色的UI创建。


9

Ascx文件称为“用户控件”,旨在提高可重用性,并降低复杂的aspx页的复杂度(展开页面的某些部分)。它们对于称为“甜甜圈缓存”的东西也可能是有益的,也就是说,当您想要缓存页面的特定部分时。


3

如果您有一个代码+ html代码块显示在多个页面上,并且与该页面无关(例如,一个最新新闻块),则可以将代码复制/粘贴到每个页面上。

但是最好将代码放在其自己的块中,并仅在需要它的每个页面上包括该块。该“块”是一个ascx文件。


1

ASCX文件是用于Web开发以生成动态Web页面的服务器端Web应用程序框架,它们类似于DLL代码,但是您可以使用其中的标签, 可以将它们编写一次并在ASP页面的任何位置使用它们。名为“ Controll.ascx”,则其代码将命名为“ Controll.ascx.cs”。您可以将其嵌入ASP页面以使用它:


1

.ascx文件的另一种用途是,它们可用于ASP.NET页面中的部分页面缓存。我们要做的是创建一个ascx文件,然后将控件或我们需要缓存的页面部分移动到该控件中。然后在ascx控件中添加@OutputCache指令,它将与父页面分开缓存。当您不想缓存整个页面而只缓存页面的特定部分时,可以使用它。


-2

当您希望能够在网站的多个位置使用控件时,使用webcontrols构建基本的asp.net网站是一个好主意。将代码与布局中的ascx文件分开将保存用于显示布局的控件,属于ascx文件的cs文件将保存填充这些控件的代码。

对于用户控件的一些基本了解,您可以尝试网站


1
不,使用代码隐藏模型时,您将获得aspx或ascx文件以及aspx.cs或ascx.cs(或aspx.vb和ascx.vb)。您的网站只能包含aspx(和aspx.cs)页面,而没有任何ascx。
汉斯·

2
似乎他对cx和cs感到困惑
Shekhar_Pro 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.