创建用户HTML控件
本文关键字:控件 HTML 用户 创建 | 更新日期: 2023-09-27 18:08:56
我想创建一个自定义Html控件。
在ASPX中:
<custom:Message runat="server" ID=""
Type="" // { "Tip", "Note", "Important", "Warning" , "Caution" }
Label=""
Text=""
Visible="" />
生成的Html:
<div class="fixedClass customClass">
<span class="label">caution</span><hr>
<blockquote>
<p>
<strong>Important:</strong>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ipsum lectus, cursus id rutrum vel
, feugiat eget leo. <strong>Cras suscipit urna vel</strong> nibh placerat vestibulum.
</p>
</blockquote>
属性:
Type用于主div的customClass。
标签是<span class="label">
.
中的文本。文本为<p>
块中的文本。
可以使用ASP。NET用户控件。这是一个非常常见的、使用得很好的ASP特性。网络形式。我很惊讶你的研究没有发现它:-)
无论如何,你可以创建一个新的用户控件,当你去"添加新项目"在Visual Studio。从模板列表中选择"Web用户控制"。这将创建一个扩展名为.ascx的文件——这是您的用户控件。在它里面,你可以添加任何你想要的HTML标记、javascript和其他。net控件(甚至其他用户控件)。它也有后台代码,可以响应事件等,以相同的方式作为一个完整的页面。
一旦创建并包含在项目中,您就可以在主aspx页面中使用它。这分为两部分——首先添加一个指令来注册控件,然后你可以添加一个标签来像使用内置控件一样使用该控件。
<%@ Register TagPrefix="uc" TagName="myControl" Src="~/Controls/myControl.ascx" %>
...
<uc:myControl id="ctrl1" runat="server"/>
如果你想在控件上添加属性(例如:"Label"answers"Text"如您所讨论的,在控件的代码后面定义公共属性:
public string Label { get; set; }
public string Text { get; set; }
显然,在代码后面的某个地方,你可以使用这些值来填充UI或其他东西。
在标记中使用:
<uc:myControl id="ctrl1" runat="server" Label="TestLabel" Text="TestText" />
或者,您可以从使用控件的页面的代码后面填充它们,就像对象的任何公共属性一样。
更多信息可以在这里找到:https://msdn.microsoft.com/en-us/library/wt3k2fyw.aspx(如何创建用户控件)以及https://msdn.microsoft.com/en-us/library/sbz9etab.aspx(如何将它们包含在您的页面中)