Дынамічнае выдаленне пралётных тэгаў, захоўваючы унутранае змесціва

Я ствараю карыстацкі элемент кіравання, каб зрабіць пазнаку блокі ўводу для формаў.

Наступны код працуе сам па сабе:


<input id="custom_calendar" type="date" required="required" aria-labelledby="custom_calendar_label">

але калі я выкарыстоўваю карыстацкі элемент кіраванне серверам, каб пабудаваць яго, па якой-небудзь прычыне, пралётныя пазнакі вакол карыстацкага элемента упраўленняў атрымліваюць аўтаматычна (не з любога кода ў маім мытным кантролі),

так што мой код завяршацца падобным




<input id="custom_calendar" type="date" required="required" aria-labelledby="custom_calendar_label">


Як дынамічна выдаляць тэг пралётных, але захаваць змесціва ўводу этыкеткі ўнутры тэгаў пралётных?

0
Калі ласка, майце такія рэчы, як «asp.net C #» з вашых кніг. Гэта ў тэгах, які з'яўляецца, дзе яна належыць.
дададзена аўтар John Saunders, крыніца
Ці з'яўляецца гэта CompositeControl?
дададзена аўтар Mantorok, крыніца

3 адказы

Па змаўчанні, ён спрабуе вывесці адзін бацькоўскі кантроль. Такім чынам, гэта робіць прамежак, што і бацькоўскі тэг. Калі элемент кіравання ў спадчыну ад вэб-кіравання, вы можаце наладзіць тэг для адлюстравання іншага кантролю (http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.webcontrol.tagname.aspx).

Або, так як вы не хочаце яго, не кліч base.Render (), калі вы перавызначыць метад візуалізацыі, і зрабіць:

protected virtual void OnRender(HtmlTextWriter writer)
{
    base.AddAttributesToRender(writer);

    //Render
    writer.RenderBeginTag("span");
    .
    .
}

Я лічу, што элемент абгорткі візуалізуецца з RenderBeginTag() і RenderEndTag (); вы маглі б паспрабаваць перакрываючы іх таксама і нічога не рабіць.

Што базавага класа вы карыстаецеся занадта? Вы пераняўшы ад ярлыка?

1
дададзена

Вы спрабавалі перакрываючы TagKey?

   protected override HtmlTextWriterTag TagKey
   {
      get { return HtmlTextWriterTag.Unknown; }
   }
0
дададзена

Вы павінны паспрабаваць выкарыстоўваць літарныя кантроль замест кіравання Label.

Тэкст ад кантролю этыкетак робіць у ўнутры тэгаў HTML, але тэкст з літаральнага кіравання аказвае як звычайны тэкст.

0
дададзена