4

我正在尝试为 dojox.grid 创建一个按钮小部件。
我的问题是:
1)该按钮仅在我双击网格时显示。
2)我不知道如何通过声明性标记设置属性。似乎 markupFactory 函数对此负责,但它没有设置小部件的标签。以下代码演示了我到目前为止所获得的内容:

dojo.require("dojox.grid.DataGrid");
dojo.require("dojo.data.ItemFileWriteStore");
dojo.require("dijit.form.Button");
dojo.require("dojox.grid.cells.dijit");
dojo.require("dojo.parser");
dojo.declare("dojox.grid.cells.Button", dojox.grid.cells._Widget, {
    widgetClass: dijit.form.Button,
    alwaysEditing: true,
    constructor: function(inCell)
    {
    this.inherited(arguments);
    this.widget = new dijit.form.Button;
    },
    setValue: function(inRowIndex, inValue){
    if (this.widget) {
                this.widget.attr('value', inValue);
            }
            else {
                this.inherited(arguments);
            }
    }
});

dojox.grid.cells.Button.markupFactory = function(node, cell)
{
    dojox.grid.cells._Widget.markupFactory(node, cell);
}
4

1 回答 1

2

对于 1) 该按钮仅在我双击网格时显示。

在 Grid 参数中设置 singleClickEdit: true

this.grid = new dojox.grid.DataGrid({
    singleClickEdit: true,
    structure: view1,
}, tmp);
于 2010-06-11T16:51:14.777 回答