zoukankan      html  css  js  c++  java
  • MVC6 (ASP.NET5) 自定义TagHelper

    1) 在 _ViewImports.cshtml 中引入TagHelper类所在的 Assembly . (注意不是namespace)  :

    @addTagHelper "*, WebApplication1"
    

     2) 创建TagHelper类:

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Threading.Tasks;
     5 using Microsoft.AspNet.Razor.Runtime.TagHelpers;
     6 using Microsoft.AspNet.Razor.TagHelpers;
     7 
     8 namespace WebApplication1.TagHelpers
     9 {
    10     // You may need to install the Microsoft.AspNet.Razor.Runtime package into your project
    11     [HtmlTargetElement("field")]
    12     public class FieldTagHelper : TagHelper
    13     {
    14         [HtmlAttributeName("label")]
    15         public string Label { get; set; }
    16 
    17         [HtmlAttributeName("cols")]
    18         public int ColumnCount { get; set; }
    19          
    20         public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output)
    21         {
    22             output.TagName = "div";
    23             output.Attributes.Add("class", "form-group");
    24 
    25             var childContent = await output.GetChildContentAsync();
    26 
    27             output.Content.SetHtmlContent($@" 
    28 <label class='col-md-{ColumnCount} control-label'>{Label}</label>
    29 <div class='form-value col-md-{12 - ColumnCount}'>{childContent.GetContent()}</div>"); 
    30         }
    31     }
    32 }

    3)使用自定义Tag:

    1 <field label="Test Label" cols="4">
    2     <input asp-for="TestName" class="form-control" />
    3 </field>
  • 相关阅读:
    「洛谷 NOIP 计划 2021」【学习1】降维技巧
    组合数取模 合集
    浅谈并查集
    四边形不等式优化 dp (doing)
    qbxt数学五一Day4
    qbxt五一数学Day3
    qbxt五一数学Day2
    qbxt五一数学Day1
    浅谈拉格朗日插值
    10-交换排序:冒泡排序
  • 原文地址:https://www.cnblogs.com/ybst/p/5028277.html
Copyright © 2011-2022 走看看