ExtJs4 - 在运行时

时间:2018-05-22 01:05:59

标签: extjs ext.net

最初加载表单时,表单上的multicombo正确反映了设置的数据。

但是,如果我尝试在运行时更新信息,则在显示表单时不会更新multicombo中的选项列表。

我已将它们成功定义为表单选项,它们有一个简单的文本'只有商店。但是,我似乎无法找到正确的属性和方法集,以便根据需要从C#代码实际更新多重逻辑。

1 个答案:

答案 0 :(得分:0)

我也注意到了这一点。您可以在页面加载时设置Ext.net.ListItems,但在代码隐藏中动态设置它们时会变幻无常。我现在总是使用Ext.net.Store与任何需要动态更改的Multicombo或ComboBox。

您可以使用FocusBeforeSelect上的处理程序事件重新加载列表。

<ext:ComboBox ID="ComboBoxTransferGroupMembers" runat="server" FieldLabel="Transfer To"     EmptyText="Group Members" LabelAlign="Top" DisplayField="Name" ValueField="Id" MarginSpec="0 0 5">

  <Listeners>
     <Focus Handler="#{ComboBoxTransferGroupMembers}.store.reload()" />
  </Listeners>

  <Store>
      <ext:Store runat="server" OnReadData="StoreTransferGroupMember_ReadData" ID="StoreXferGroup">
          <Model>
              <ext:Model IDProperty="Id" runat="server">
                  <Fields>
                      <ext:ModelField Name="Name" />
                      <ext:ModelField Name="Id" />
                  </Fields>
              </ext:Model>
          </Model>
          <Parameters>
              <ext:StoreParameter Mode="Raw" Name="Group" Value="#{ComboBoxTransferGroup}.getValue()" />
          </Parameters>

      </ext:Store>
  </Store>
  <DirectEvents>
      <Select OnEvent="ComboBoxTransferGroupMembers_Select">
          <ExtraParams>
              <ext:Parameter Mode="Raw" Name="Group" Value="#{ComboBoxTransferGroup}.getValue()" />
          </ExtraParams>    
      </Select>
  </DirectEvents>

</ext:ComboBox>