【发布时间】:2011-08-26 10:22:17
【问题描述】:
我有以下问题:
以编程方式创建 dijit.Dialog 和 dojox.grid.DataGrid(链接到全局变量数据存储 (dojo.store.Memory) )不会显示 Dialog 的内容,而 Dialog 的大小保持在最小值。
DataGrids Store 已正确填充,Firebug 在对话框中显示 Grid。
data = new dojo.data.ObjectStore(
{ objectStore: new dojo.store.Memory({data:[]}) });
data.put({id:0,name:'Franklin'});
showDialog = function(){
var dlg = dijit.byId('myDlg');
if(dlg){
dlg.show();
}
else{
var cp = new dijit.layout.ContentPane({style:"width:500;height:500;"});
var grid = new dojox.grid.DataGrid({
store : data,
structure : [
{field:'id',name:'ID',width:'50px'},
{field:'name',name:'Name',width:'400px'}]
},cp);
dlg = new dijit.Dialog({
id:'myDlg',
title:'Names',
content:cp.domNode
});
grid.startup();
dlg.show();
}
);
也许我添加的东西顺序错误?
我也不知道我的组合/附加dojo小部件的方式是否 使用 domNode 属性是正确的做事方式。
我不知道我正在使用的 ContentPane 是否需要放置 对话框内的网格。到目前为止,这两种变体都不起作用。
最后,我不确定 Dialog 是否以及在何处需要静态测量 大小正确。以我的经验,对话框本身不需要静态 宽度或高度,但到目前为止我还没有添加动态组件的经验 就像 Grid - 稍后可能会在启动时更改其大小 - 到一个对话框。
【问题讨论】:
标签: dialog dojo dojox.grid.datagrid