public override void Render(Rect rect) { GUILayout.BeginArea(rect); GUILayout.BeginHorizontal(); masterView.Render(); GUILayout.Space(10f); detailView.Render(); GUILayout.EndHorizontal(); GUILayout.EndArea(); }
/// <summary> /// 处理和渲染指定 HTML 范畴 /// </summary> /// <param name="scope">要处理和渲染的范畴</param> /// <returns>渲染结果</returns> protected override string RenderCore(IHtmlContainer scope) { HttpContext.Trace.Write("JumonyView", "Begin GetViewHandler"); var handler = GetHandler(VirtualPath); HttpContext.Trace.Write("JumonyView", "End GetViewHandler"); HttpContext.Trace.Write("JumonyView", "Begin Process"); OnPreProcess(); ProcessScope(handler); OnPostProcess(); HttpContext.Trace.Write("JumonyView", "End Process"); HttpContext.Trace.Write("JumonyView", "Begin ProcessActionRoutes"); Url.ProcessActionUrls(Scope); HttpContext.Trace.Write("JumonyView", "End ProcessActionRoutes"); HttpContext.Trace.Write("JumonyView", "Begin ResolveUri"); Scope.Find("form[postback]") .SetAttribute("action", RawViewContext.HttpContext.Request.RawUrl) .SetAttribute("method", "post") .RemoveAttribute("postback"); Url.ResolveUri(Scope, VirtualPath); HttpContext.Trace.Write("JumonyView", "End ResolveUri"); AddGeneratorMetaData(); RenderAdapters = GetRenderAdapters(handler); string result; if (MasterView != null) { HttpContext.Trace.Write("JumonyView", "Begin Initialize Master"); MasterView.Initialize(ViewContext); HttpContext.Trace.Write("JumonyView", "End Initialize Master"); var jumonyMaster = MasterView as JumonyMasterView; if (jumonyMaster != null) { HttpContext.Trace.Write("JumonyView", "Begin Process Master"); ProcessMaster(jumonyMaster); HttpContext.Trace.Write("JumonyView", "Begin Process Master"); } HttpContext.Trace.Write("JumonyView", "Begin Render"); OnPreRender(); result = MasterView.Render(this); OnPostRender(); HttpContext.Trace.Write("JumonyView", "End Render"); } else { HttpContext.Trace.Write("JumonyView", "Begin Render"); OnPreRender(); result = RenderContent(RenderAdapters.ToArray()); OnPostRender(); HttpContext.Trace.Write("JumonyView", "End Render"); } var disposable = handler as IDisposable; if (disposable != null) { disposable.Dispose(); } return(result); }