我使用两个窗格(网格和细节)作为主要细节模式。 现在我正在尝试创建“右侧的详细信息”或“底部的详细信息”切换按钮。我这样做是通过更改ContentPane的区域属性来实现的,如下所示:
function toggleDetails() {
if(dijit.byId("Details").region == "right") {
dijit.byId("Details").set("region", "bottom");
dojo.byId("Details").style.height = "200px";
}
else {
dijit.byId("Details").set("region", "right");
dojo.byId("Details").style.width = "400px";
}
dijit.byId("DetailsParent").resize();
}
窗格本身正在改变。 问题是我有一个详细信息窗格的拆分器。切换时,拆分器对于原始方向是可以的,但是对于替代方向不能正确渲染。任何基于contentPane区域刷新拆分器方向的解决方案?
我尝试过以编程方式更改某些拆分器小部件属性,例如“水平”和“区域”,但没有真正修复替代方向。
答案 0 :(得分:0)
可能的解决方案可以是使用removeChild和addChild,就像在这个例子中一样
if (isVertical) {
// vertical layout
this.ap_MainContainer.removeChild(this.ap_TopContainer);
this.ap_TopContainer.region = 'top';
this.ap_MainContainer.addChild(this.ap_TopContainer);
} else {
// horizontal layout
this.ap_MainContainer.removeChild(this.ap_TopContainer);
this.ap_TopContainer.region = 'left';
this.ap_MainContainer.addChild(this.ap_TopContainer);
}