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

C# 您什么时候需要.ascx文件以及如何使用它们?,c#,asp.net,C#,Asp.net,在构建网站时,何时使用.ascx文件是一个好主意?.ascx到底是什么?它的用途是什么?示例将非常有用,谢谢 它是您在项目中拥有的资源的扩展 用户控件是一种复合控件,其工作原理与ASP.NET网页非常相似。您可以向用户控件添加现有的Web服务器控件和标记,并定义控件的属性和方法。然后,您可以将它们嵌入ASP.NET网页中,作为一个单元 简单地说,如果您想在项目的许多页面上使用一些功能,那么您应该创建一个用户控件或复合控件,并在页面中使用它。它只是帮助您将相同的功能和代码保存在一个地方。当您在构建

在构建网站时,何时使用.ascx文件是一个好主意?.ascx到底是什么?它的用途是什么?示例将非常有用,谢谢

它是您在项目中拥有的资源的扩展

用户控件是一种复合控件,其工作原理与ASP.NET网页非常相似。您可以向用户控件添加现有的Web服务器控件和标记,并定义控件的属性和方法。然后,您可以将它们嵌入ASP.NET网页中,作为一个单元


简单地说,如果您想在项目的许多页面上使用一些功能,那么您应该创建一个用户控件或复合控件,并在页面中使用它。它只是帮助您将相同的功能和代码保存在一个地方。当您在构建一个基本的asp.net网站时,使用WebControl可以使其可重用。当您希望能够在网站中的多个位置使用控件时,使用WebControl是一个好主意。 将代码与布局ascx文件分离将保留用于显示布局的控件,属于ascx文件的cs文件将保留填充这些控件的代码


要了解用户控件的一些基本知识,您可以尝试访问网站

调用Ascx文件是为了可重用性,也为了降低复杂的aspx页面的复杂性(去掉页面的某些部分)。它们还可以用于一种称为的功能,即当您希望缓存页面的某个部分时。

如果您有一块代码+html出现在多个页面上,并且与该页面(例如一块最新的新闻项目)有某种程度的独立性,则可以将代码复制/粘贴到每个页面


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

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

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


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

ASCX文件是为Web开发设计的服务器端Web应用程序框架,用于生成动态网页。它们喜欢DLL代码,但可以使用标记 您可以编写它们一次,然后在ASP页面的任何位置使用它们。如果您有一个名为“Controll.ascx”的文件,则其代码将命名为“Controll.ascx.cs”。
您可以将其嵌入ASP页面以使用它:

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

否,使用codebehind模型,您可以获得aspx或ascx文件以及aspx.cs或ascx.cs(或aspx.vb和ascx.vb)。你可以有一个只有aspx(和aspx.cs)页面的站点,而没有任何ascx。看起来他被cx和csx弄糊涂了,难道一个母版页就不够了吗?我们不能在母版页的代码隐藏文件中编写我们的功能逻辑吗?