我有一个简单的窗口,想把它显示为弹出窗口。我的问题是如何从我的控制器使用xtype访问此窗口。
Ext.define('My.view.definition.PropertyToDTWindow', {
extend: 'Ext.window.Window',
requires: ['My.view.definition.PropertyToDTForm'],
alias : 'widget.PropertyToDTWindow',
title: 'Add Property',
closeAction: 'hide',
width: 300,
height: 350,
layout: 'fit',
resizable: true,
modal: true,
autoCreate: true,
items: 'propertytodtform',
});
我需要在我的控制器中执行的操作是调用窗口并显示它,但它不起作用,我得到未捕获的TypeError:无法将undefined或null转换为对象错误:
var form = this.getPropertyToDTWindow();
form.show();
这是我的xtype def:
{
ref: 'PropertyToDTWindow',
selector: '',
xtype: 'PropertyToDTWindow',
autoCreate: true
}
答案 0 :(得分:0)
selector
必须是Ext.ComponentQuery指定的内容。
xtype
定义了使用autoCreate
时创建的组件。 Check the specs here.
答案 1 :(得分:0)
尝试使用此
var win = Ext.create('My.view.definition.PropertyToDTWindow').show();
var form = win.down('#your-form-itemId').getForm();
如果这不起作用,您可以直接访问该字段,如下所示:
win.down('#firstname').setValue('Tim');
/*
* #firstname -> textfield with itemId firstname
*/