Linus가 말했듯이 "f *** 소스 코드 읽기." 그래서, 거기이 핵심 포인트 2.
// ASP.default_aspx
private void __Renderform1(HtmlTextWriter __w, Control parameterContainer)
{
__w.Write("\r\n ");
parameterContainer.Controls[0].RenderControl(__w);
__w.Write("\r\n start\r\n ");
this._message.InnerText = base.GetType().ToString();
__w.Write("\r\n <h3>Page type:");
parameterContainer.Controls[1].RenderControl(__w); // Here the change has no effect.
__w.Write("</h3>\r\n end\r\n ");
}
에 대한
1.
// ASP.default_aspx
private void __Renderform1(HtmlTextWriter __w, Control parameterContainer)
{
__w.Write("\r\n ");
parameterContainer.Controls[0].RenderControl(__w);
__w.Write("\r\n start\r\n <h3>Page type:");
parameterContainer.Controls[1].RenderControl(__w);
__w.Write("</h3>\r\n ");
this._message.InnerText = base.GetType().ToString();
__w.Write("\r\n end\r\n ");
}
에 대한 :
을 그래서 나는 코드를 컴파일이 있어요 ASP.NET 파서는 전체 페이지를 위에서 아래로 패션,로 렌더링합니다. 문자 그대로 입니다.
혼란은 데스크탑에서의 내 경험에 기인합니다. . 데스크톱 앱의
, 그것은 같은있다 : -> Memeory - 코드 ASP.NET 응용 프로그램의 경우> UI
,이 같은입니다 : 코드 -> 메모리 -> OUPUT Buffer-> UI
에서 스 니펫 2, 코드 -> 메모리 단계에 대한 변경이 발생하지만 출력 버퍼에 적용 할 기회가 없으므로 궁극적 인 UI에서는 변경된 사항이 없습니다.
근본적인 원인은 ASP.NET 응용 프로그램 용 UI에 도달하기 전에 추가 단계가 있다는 것입니다.
나는 분명히 할 수 있기를 바랍니다.
스 니펫 2에서 스팬이 이미 렌더링되었으므로 해당 컨트롤에 대한 모든 변경 사항이 다음 포스트 백에만 적용되는 반면 스 니펫 1에서는 그 반대로 적용됩니다. –