May 28, 2012, 7:46 PM
[CLOSED] ForceLayout of child controls
When the Enter key is pressed in DropDownField prior expading it, the TreePanel is not initialized. In version 1.x of Ext.Net i could force the initialization of child controls by setting ForceLayout property, but in version 2.0 this property is not available anymore.
Any idea to accomplish this task?
Any idea to accomplish this task?
<ext:FormPanel ID="FormPanel1" runat="server" DefaultButton="-1" Title="Form Panel"
Width="500">
<Items>
<ext:DropDownField ID="DropDownField1" runat="server" FieldLabel="raphael" AnchorHorizontal="100%"
TriggerIcon="Combo">
<Component>
<ext:TreePanel runat="server" Icon="Accept" Height="300" Shadow="false" UseArrows="true"
AutoScroll="true" Animate="true" EnableDD="true" RootVisible="false">
<Fields>
<ext:ModelField Name="Task" />
</Fields>
<ColumnModel>
<Columns>
<ext:TreeColumn ID="TreeColumn2" runat="server" Text="Task" DataIndex="Task" />
</Columns>
</ColumnModel>
<Store>
<ext:TreeStore ID="TreeStore1" NodeParam="nodeId" AutoLoad="false" runat="server">
<Proxy>
<ext:AjaxProxy Url="/Example/loadNodeChildren/">
<Reader>
<ext:JsonReader Root="data" />
</Reader>
</ext:AjaxProxy>
</Proxy>
</ext:TreeStore>
</Store>
<Root>
<ext:Node NodeID="0" Text="Ext" />
</Root>
</ext:TreePanel>
</Component>
<Listeners>
<SpecialKey Fn="onSpecialKey" />
</Listeners>
</ext:DropDownField>
</Items>
<Bin>
<ext:Store ID="Store2" runat="server" AutoLoad="false" PageSize="1">
<Model>
<ext:Model ID="Model2" IDProperty="ID" runat="server">
<Fields>
<ext:ModelField Name="ID" />
<ext:ModelField Name="Name" />
<ext:ModelField Name="SubEntityID" />
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Bin>
<Listeners>
</Listeners>
</ext:FormPanel>
var onSpecialKey = function (field, e) {
if (e.keyCode == Ext.EventObject.ENTER) {
e.preventDefault();
if (field.component.getRootNode == null) {
alert('NOT ready');
}
else {
alert('READY');
}
}
}
Last edited by Daniil; May 30, 2012 at 3:59 PM.
Reason: [CLOSED]