📄 htmlformadapter.cs
字号:
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI.Adapters;
using System.Web.UI;
using System.IO;
namespace DNNLite
{
/// <summary>
///重写form的呈现
/// </summary>
public class HtmlFormAdapter : ControlAdapter
{
protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
base.Render(new FormRewriteTextWriter(writer));
}
}
public class FormRewriteTextWriter : HtmlTextWriter
{
public FormRewriteTextWriter(TextWriter writer)
: base(writer)
{
if (writer is HtmlTextWriter)
this.InnerWriter = (writer as HtmlTextWriter).InnerWriter;
else
this.InnerWriter = writer;
}
public override void WriteAttribute(string name, string value, bool fEncode)
{
HttpContext context = HttpContext.Current;
object rewroteAlready = context.Items["FormActionRewroteAlready"];
if (name == "action" && rewroteAlready == null)
{
if (!context.Items.Contains("createstaticfile"))
{
value = context.Request.RawUrl;
}
else
{
value = " ";
}
context.Items["FormActionRewroteAlready"] = new object();
}
base.WriteAttribute(name, value, fEncode);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -