ComboBox's SelectAll() method or its SelectedItems property seems out of synch

  1. #1

    ComboBox's SelectAll() method or its SelectedItems property seems out of synch

    Hi Ext.NET,

    From the serverside, when I invoke a SelectAll() on a combobox and then immediately check that web control's SelectedItems property, the values are not what I'd expect.
    1) click any of the buttons in my sample; first attempt the control indicates its SelectedItems property has nothing selected, immediately following a call to its SelectAll() method.
    2) clicking any of the buttons a second time is even more strange. Now, the combo box control's SelectedItems property replies back with the list of items that I expected from the first attempt.
    3) clicking a third time, the combo box control's SelectedItems property is always one step out of synch, always replying back with the values that should have been selected the last time.

    Is there some special step that I need to take after invoking SelectAll() method, to bind those selections to the web control?

    Here's my example code:
    <%@ Page Language="C#" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>MultiCombo - Ext.NET Examples</title>    
    
    <script runat="server">
        private object TestData1
        {
            get
            {
                return new object[]
                {
                    new object[] { "1A", "AVal1" },
                    new object[] { "1B", "AVal2" },
                    new object[] { "1C", "AVal3" },
                    new object[] { "1D", "AVal4" },
                    new object[] { "1E", "AVal5" },
                    new object[] { "1F", "AVal6" }
                };
            }
        }
    
        private object TestData2
        {
            get
            {
                return new object[]
                {
                    new object[] { "2A", "BVal1" },
                    new object[] { "2B", "BVal2" },
                    new object[] { "2C", "BVal3" },
                    new object[] { "2D", "BVal4" },
                    new object[] { "2E", "BVal5" },
                    new object[] { "2F", "BVal6" }
                };
            }
        }
    
        protected override void OnLoad(EventArgs e)
        {
            if (!X.IsAjaxRequest)
            {
                if (!IsPostBack)
                {
                    this.TestCombo.GetStore().DataSource = TestData1;
                    this.TestCombo.GetStore().DataBind();
    
    
                    this.explicitStore.DataSource = TestData1;
                    this.explicitStore.DataBind();
                }
            }
    
        }
    
        //should work b/c any call backs to non-static serverside methods should cause the Page lifecycle to execute and allow access to all page's web controls
        [DirectMethod]
        public void DM_RefreshMultiCombo()
        {
            this.TestCombo.GetStore().DataSource = TestData1;
            this.TestCombo.GetStore().DataBind();
            this.TestCombo.SelectAll();
            lblDisplay1.Text = (this.TestCombo.SelectedItems == null || this.TestCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.TestCombo.SelectedItems.Select(x => x.Value));
    
            this.explicitStore.DataSource = TestData1;
            this.explicitStore.DataBind();
            this.ExplicitStoreCombo.SelectAll();
            lblDisplay2.Text = (this.ExplicitStoreCombo.SelectedItems == null || this.ExplicitStoreCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.ExplicitStoreCombo.SelectedItems.Select(x => x.Value));
            //unfortunately DirectMethod unable to get the multi combos to reflect 2nd dataset
        }
    
        //should also work b/c any call backs to non-static serverside methods should cause the Page lifecycle to execute and allow access to all page's web controls
        protected void DE_RefreshMultiCombo(object sender, DirectEventArgs e)
        {
            this.TestCombo.GetStore().DataSource = TestData2;
            this.TestCombo.GetStore().DataBind();     
            this.TestCombo.SelectAll();
            lblDisplay1.Text = (this.TestCombo.SelectedItems == null) ? "NO SELECTIONS" : String.Join(", ", this.TestCombo.SelectedItems.Select(x => x.Value));
            
    
            this.explicitStore.DataSource = TestData2;
            this.explicitStore.DataBind();
            this.ExplicitStoreCombo.SelectAll();
            lblDisplay2.Text = (this.ExplicitStoreCombo.SelectedItems == null) ? "NO SELECTIONS" : String.Join(", ", this.ExplicitStoreCombo.SelectedItems.Select(x => x.Value));
            //DirectEvent handler also unable to get the multi combos to reflect 2nd dataset
        }
    </script>
        
    </head>
    <body>
        <form runat="server">
            <ext:ResourceManager runat="server" />        
    
            <ext:Label runat="server" Text="StandardCombo's Selections:" /><ext:Label runat="server" ID="lblDisplay1" Text="...nothing yet"/>
            <br />
            
            <ext:MultiCombo runat="server" ID="TestCombo" SelectionMode="Selection" DisplayField="name" ValueField="abbr">
                 <Store>
                        <ext:Store runat="server">
                            <Model>
                                <ext:Model runat="server">
                                    <Fields>
                                        <ext:ModelField Name="abbr" />
                                        <ext:ModelField Name="name" />                                    
                                    </Fields>
                                </ext:Model>
                            </Model>
    
                            <Reader>
                                <ext:ArrayReader />
                            </Reader>
                        </ext:Store>
                    </Store>                        
            </ext:MultiCombo>
            <br />
            
            <ext:Label runat="server" Text="ExplicitStoreCombo's Selections:" /><ext:Label runat="server" ID="lblDisplay2" Text="... nothing yet" />
            <br />
            <ext:MultiCombo runat="server" ID="ExplicitStoreCombo" SelectionMode="Selection" DisplayField="name" ValueField="abbr">
                 <Store>
                        <ext:Store ID="explicitStore" runat="server">
                            <Model>
                                <ext:Model runat="server">
                                    <Fields>
                                        <ext:ModelField Name="abbr" />
                                        <ext:ModelField Name="name" />                                    
                                    </Fields>
                                </ext:Model>
                            </Model>
    
                            <Reader>
                                <ext:ArrayReader />
                            </Reader>
                        </ext:Store>
                    </Store>                        
            </ext:MultiCombo>
            <br />
    
            <ext:Button
                ID="Button1"
                runat="server"            
                Text="Load MultiCombo w/ DirectMethod"
                >
                <Listeners>
                    <Click Handler="App.direct.DM_RefreshMultiCombo();" />
                </Listeners>            
            </ext:Button>
    
            <ext:Button
                ID="Button2"
                runat="server"            
                Text="Load MultiCombo w/ DirectEvent"            
                >
                <DirectEvents>
                    <Click OnEvent="DE_RefreshMultiCombo" />
                </DirectEvents>
            </ext:Button>
        </form>
    </body>
    </html>
  2. #2
    Hello @Caleb!

    I am pretty confident you just missed calling UpdateSelectedItems() as you can see in this EE example: Form > Combo Box > Items Actions

    I was going to tell you in the other thread it was not necessary to open this one, as this has already been discussed widely in other forum threads, but as you went thru the trouble of creating it, we'll just link this answer there.

    Just add the call after the data bind commands or after you call selectAll.

    The selected items count checks right after the call (in code behind) should not be relied upon, as the actual change is made in client-side. Even if you made it select all, it won't guarantee that's the condition in client-side, but rather the initial condition in server-side (as it would be by the time the page is first loaded).

    Hope this helps!
    Fabrício Murta
    Developer & Support Expert
  3. #3
    Hmm... I've tried to call the UpdateSelectedItems method from the server side, but may still be missing something.
    The immediate results after that on the server-side as well as the client-side don't seem to be working as expected.
    In my example code, click the first button and it should show the client side condition for selected items under the TestCombo.
    Not sure if I'm calling the correct method on client side, though, because checking several "select" related methods all returned an empty result set.


    <%@ Page Language="C#" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>MultiCombo - Ext.NET Examples</title>    
    
    <script runat="server">
        private object TestData1
        {
            get
            {
                return new object[]
                {
                    new object[] { "1A", "AVal1 Text" },
                    new object[] { "1B", "AVal2 Text" },
                    new object[] { "1C", "AVal3 Text" },
                    new object[] { "1D", "AVal4 Text" },
                    new object[] { "1E", "AVal5 Text" },
                    new object[] { "1F", "AVal6 Text" }
                };
            }
        }
    
        private object TestData2
        {
            get
            {
                return new object[]
                {
                    new object[] { "2A", "BVal1 Text" },
                    new object[] { "2B", "BVal2 Text" },
                    new object[] { "2C", "BVal3 Text" },
                    new object[] { "2D", "BVal4 Text" },
                    new object[] { "2E", "BVal5 Text" },
                    new object[] { "2F", "BVal6 Text" }
                };
            }
        }
    
        protected override void OnLoad(EventArgs e)
        {
            if (!X.IsAjaxRequest)
            {
                if (!IsPostBack)
                {
                    this.TestCombo.GetStore().DataSource = TestData1;
                    this.TestCombo.GetStore().DataBind();
    
    
                    this.explicitStore.DataSource = TestData1;
                    this.explicitStore.DataBind();
                }
            }
    
        }
    
        //server-side selection state doesn't match expected results after select all
        [DirectMethod]
        public void DM_RefreshMultiCombo()
        {
            this.TestCombo.GetStore().DataSource = TestData1;
            this.TestCombo.GetStore().DataBind();
            this.TestCombo.SelectAll();//on server-side, invoking SelectAll() immediately followed by UpdateSelectedItems()
            this.TestCombo.UpdateSelectedItems();
            lblDisplay1.Text = (this.TestCombo.SelectedItems == null) ? "NO SELECTIONS" : String.Join(", ", this.TestCombo.SelectedItems.Select(x => x.Value));
    
            this.explicitStore.DataSource = TestData1;
            this.explicitStore.DataBind();
            this.ExplicitStoreCombo.SelectAll();//on server-side, invoking SelectAll() immediately followed by UpdateSelectedItems()
            this.ExplicitStoreCombo.UpdateSelectedItems();
            lblDisplay2.Text = (this.ExplicitStoreCombo.SelectedItems == null) ? "NO SELECTIONS" : String.Join(", ", this.ExplicitStoreCombo.SelectedItems.Select(x => x.Value));        
        } //client-side state, after DirectMethod completes, also doesn't seem to match expected selections
    
        
        //server-side selection state doesn't match expected results after select all
        protected void DE_RefreshMultiCombo(object sender, DirectEventArgs e)
        {
            
            this.TestCombo.GetStore().DataSource = TestData2;
            this.TestCombo.GetStore().DataBind();
            this.TestCombo.SelectAll(); //on server-side, invoking SelectAll() immediately followed by UpdateSelectedItems()
            this.TestCombo.UpdateSelectedItems();
            lblDisplay1.Text = (this.TestCombo.SelectedItems == null) ? "NO SELECTIONS" : String.Join(", ", this.TestCombo.SelectedItems.Select(x => x.Text));
            
    
            this.explicitStore.DataSource = TestData2;
            this.explicitStore.DataBind();
            this.ExplicitStoreCombo.SelectAll(); //on server-side, invoking SelectAll() immediately followed by UpdateSelectedItems()
            this.ExplicitStoreCombo.UpdateSelectedItems(); 
            lblDisplay2.Text = (this.ExplicitStoreCombo.SelectedItems == null) ? "NO SELECTIONS" : String.Join(", ", this.ExplicitStoreCombo.SelectedItems.Select(x => x.Value));            
        }
    </script>
        
    </head>
    <body>
        <form runat="server">
            <ext:ResourceManager runat="server" ScriptMode="Debug" SourceFormatting="true"/>        
    
            <ext:Label runat="server" Text="StandardCombo's Selections:" /><ext:Label runat="server" ID="lblDisplay1" Text="...nothing yet"/>
            <br />
            
            <ext:MultiCombo runat="server" ID="TestCombo" SelectionMode="Selection" DisplayField="name" ValueField="abbr">
                 <Store>
                        <ext:Store runat="server">
                            <Model>
                                <ext:Model runat="server">
                                    <Fields>
                                        <ext:ModelField Name="abbr" />
                                        <ext:ModelField Name="name" />                                    
                                    </Fields>
                                </ext:Model>
                            </Model>
    
                            <Reader>
                                <ext:ArrayReader />
                            </Reader>
                        </ext:Store>
                    </Store>                        
            </ext:MultiCombo>
            <br />
            
            <ext:Label runat="server" Text="ExplicitStoreCombo's Selections:" /><ext:Label runat="server" ID="lblDisplay2" Text="... nothing yet" />
            <br />
            <ext:MultiCombo runat="server" ID="ExplicitStoreCombo" SelectionMode="Selection" DisplayField="name" ValueField="abbr">
                 <Store>
                        <ext:Store ID="explicitStore" runat="server">
                            <Model>
                                <ext:Model runat="server">
                                    <Fields>
                                        <ext:ModelField Name="abbr" />
                                        <ext:ModelField Name="name" />                                    
                                    </Fields>
                                </ext:Model>
                            </Model>
    
                            <Reader>
                                <ext:ArrayReader />
                            </Reader>
                        </ext:Store>
                    </Store>                        
            </ext:MultiCombo>
            <br />
    
            <ext:Button
                ID="Button1"
                runat="server"            
                Text="Load MultiCombo w/ DirectMethod"
                >
                <Listeners>
                    <Click Handler="App.direct.DM_RefreshMultiCombo(
                        {
                        complete: function(result){
                            Ext.Msg.alert('Selections in effect on client-side', 'Dummy Test ' + #{TestCombo}.getSelectedValues());
                            }
                        }
                    );" />
                </Listeners>            
            </ext:Button>
    
            <ext:Button
                ID="Button2"
                runat="server"            
                Text="Load MultiCombo w/ DirectEvent"            
                >
                <DirectEvents>
                    <Click OnEvent="DE_RefreshMultiCombo" />
                </DirectEvents>
            </ext:Button>
        </form>
    </body>
    </html>
  4. #4
    Hello @Caleb!

    I think I get your question now. From what I've replied above:

    Quote Originally Posted by Fabricio
    The selected items count checks right after the call (in code behind) should not be relied upon, as the actual change is made in client-side. Even if you made it select all, it won't guarantee that's the condition in client-side, but rather the initial condition in server-side (as it would be by the time the page is first loaded).
    I meant that, when you make a call to bind store, or databind, you are but preparing the client side commands.

    You don't have an immediate feedback from server when you call a data binding command, it just builds the JavaScript query that it should do so, getting the current state of a server-side object does not always reflect to its status.

    I mean, if you call a combo box or multicombo's SelectAll() method, it just queues the client side command, so that this server call response will make the client call the method on the browser as soon as it returns.
    So it does not do server-side changes right after you call SelectAll() from server-side. It should though, know the selection next time a direct method is called.

    In order to avoid long long pastes, I'm going to just show you two blocks for you to add to your initial example:

    1st block, within code behind script block
    Add this direct method
    [DirectMethod]
    public void DM_GetComboSelItems()
    {
        lblDisplay1.Text = (this.TestCombo.SelectedItems == null || this.TestCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.TestCombo.SelectedItems.Select(x => x.Value));
        lblDisplay2.Text = (this.ExplicitStoreCombo.SelectedItems == null || this.ExplicitStoreCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.ExplicitStoreCombo.SelectedItems.Select(x => x.Value));
    }
    2nd block, around the other buttons in the page
    This button just to call the new direct method
    <ext:Button
        ID="Button3"
        runat="server"            
        Text="Refresh MultiCombo selection status w/ DirectMethod"
        >
        <Listeners>
            <Click Handler="App.direct.DM_GetComboSelItems();" />
        </Listeners>            
    </ext:Button>
    This may raise other questionings, because some other items -do- change. But look at this case, if you change the direct method and add two labels to the same page:

    directmethod:
    [DirectMethod]
    public void DM_GetComboSelItems()
    {
        lblDisplay1.Text = (this.TestCombo.SelectedItems == null || this.TestCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.TestCombo.SelectedItems.Select(x => x.Value));
        lblDisplay3.Text = "Before changing, time, lblDisplay2text had: " + lblDisplay2.Text;
        lblDisplay2.Text = (this.ExplicitStoreCombo.SelectedItems == null || this.ExplicitStoreCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.ExplicitStoreCombo.SelectedItems.Select(x => x.Value));
        lblDisplay4.Text = "At that time, lblDisplay2text had: " + lblDisplay2.Text;
    }
    labels:
    <ext:Label runat="server" Text="Label2 display before:" /><ext:Label runat="server" ID="lblDisplay3" Text="Not checked." />
    <br />
    <ext:Label runat="server" Text="Label2 display after:" /><ext:Label runat="server" ID="lblDisplay4" Text="Not checked." />
    So if you follow this script:
    1. load the page
    2. click the 1st button, so that it will add "NO SELECTIONS" to the label2
    3. click the new DirectMethod button, that will call the updated DM_GetComboSelItems()

    You'd probably expect:
    - lblDisplay3 show: NO SELECTIONS
    - lblDisplay4 show the list with all selected items

    But what you'd see is:
    - lblDisplay3 show: nothing yet... (yes, the value initially given in the page's ASPX code!)
    - lblDisplay4 show the list with all selected items

    But if you query the MultiCombo, you don't get its initial state. You get its actual selection. Why's that?

    That's because all contents bound to the form, data that is submit in the page, are synced to code behind every call. But components current configuration, even if changed from other code-behind calls, are not. If you had a text field insted of a label with a text value instead, the behavior would be to show NO SELECTIONS for example. The text field has its value bound to the form, as well as the multi combo has its selections also as data in the form.

    On the other hand, the lblDisplay2.Text -is- updated at once in code behind, without the need to wait another call. That's just because it is a simple object/variable attribution, so it is feasible to get it without waiting another task. More complex code, like selecting entries would require logic implemented, that could not always match what would happen in client side, so that would not be reliable.

    In general, side effects of ExtJS API -calls- are not reflected immediatly at server side. Another request to ensure the call went in would be required.

    I hope this clarifies the concept a bit more.

    Below is the full example if you get lost around pasting the blocks. It is based in your first post here.

    <%@ Page Language="C#" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>MultiCombo - Ext.NET Examples</title>    
    
    <script runat="server">
        private object TestData1
        {
            get
            {
                return new object[]
                {
                    new object[] { "1A", "AVal1" },
                    new object[] { "1B", "AVal2" },
                    new object[] { "1C", "AVal3" },
                    new object[] { "1D", "AVal4" },
                    new object[] { "1E", "AVal5" },
                    new object[] { "1F", "AVal6" }
                };
            }
        }
    
        private object TestData2
        {
            get
            {
                return new object[]
                {
                    new object[] { "2A", "BVal1" },
                    new object[] { "2B", "BVal2" },
                    new object[] { "2C", "BVal3" },
                    new object[] { "2D", "BVal4" },
                    new object[] { "2E", "BVal5" },
                    new object[] { "2F", "BVal6" }
                };
            }
        }
    
        protected override void OnLoad(EventArgs e)
        {
            if (!X.IsAjaxRequest)
            {
                if (!IsPostBack)
                {
                    this.TestCombo.GetStore().DataSource = TestData1;
                    this.TestCombo.GetStore().DataBind();
    
    
                    this.explicitStore.DataSource = TestData1;
                    this.explicitStore.DataBind();
                }
            }
    
        }
    
        //should work b/c any call backs to non-static serverside methods should cause the Page lifecycle to execute and allow access to all page's web controls
        [DirectMethod]
        public void DM_RefreshMultiCombo()
        {
            this.TestCombo.GetStore().DataSource = TestData1;
            this.TestCombo.GetStore().DataBind();
            this.TestCombo.SelectAll();
            lblDisplay1.Text = (this.TestCombo.SelectedItems == null || this.TestCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.TestCombo.SelectedItems.Select(x => x.Value));
    
            this.explicitStore.DataSource = TestData1;
            this.explicitStore.DataBind();
            this.ExplicitStoreCombo.SelectAll();
            lblDisplay2.Text = (this.ExplicitStoreCombo.SelectedItems == null || this.ExplicitStoreCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.ExplicitStoreCombo.SelectedItems.Select(x => x.Value));
            //unfortunately DirectMethod unable to get the multi combos to reflect 2nd dataset
        }
    
        [DirectMethod]
        public void DM_GetComboSelItems()
        {
            lblDisplay1.Text = (this.TestCombo.SelectedItems == null || this.TestCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.TestCombo.SelectedItems.Select(x => x.Value));
            lblDisplay3.Text = "Before changing, time, lblDisplay2text had: " + lblDisplay2.Text;
            lblDisplay2.Text = (this.ExplicitStoreCombo.SelectedItems == null || this.ExplicitStoreCombo.SelectedItems.Count == 0) ? "NO SELECTIONS" : String.Join(", ", this.ExplicitStoreCombo.SelectedItems.Select(x => x.Value));
            lblDisplay4.Text = "At that time, lblDisplay2text had: " + lblDisplay2.Text;
        }
    
        //should also work b/c any call backs to non-static serverside methods should cause the Page lifecycle to execute and allow access to all page's web controls
        protected void DE_RefreshMultiCombo(object sender, DirectEventArgs e)
        {
            this.TestCombo.GetStore().DataSource = TestData2;
            this.TestCombo.GetStore().DataBind();
            this.TestCombo.SelectAll();
            lblDisplay1.Text = (this.TestCombo.SelectedItems == null) ? "NO SELECTIONS" : String.Join(", ", this.TestCombo.SelectedItems.Select(x => x.Value));
    
    
            this.explicitStore.DataSource = TestData2;
            this.explicitStore.DataBind();
            this.ExplicitStoreCombo.SelectAll();
            lblDisplay2.Text = (this.ExplicitStoreCombo.SelectedItems == null) ? "NO SELECTIONS" : String.Join(", ", this.ExplicitStoreCombo.SelectedItems.Select(x => x.Value));
            //DirectEvent handler also unable to get the multi combos to reflect 2nd dataset
        }
    </script>
        
    </head>
    <body>
        <form runat="server">
            <ext:ResourceManager runat="server" />        
    
            <ext:Label runat="server" Text="StandardCombo's Selections:" /><ext:Label runat="server" ID="lblDisplay1" Text="...nothing yet"/>
            <br />
            
            <ext:MultiCombo runat="server" ID="TestCombo" SelectionMode="Selection" DisplayField="name" ValueField="abbr">
                 <Store>
                        <ext:Store runat="server">
                            <Model>
                                <ext:Model runat="server">
                                    <Fields>
                                        <ext:ModelField Name="abbr" />
                                        <ext:ModelField Name="name" />                                    
                                    </Fields>
                                </ext:Model>
                            </Model>
    
                            <Reader>
                                <ext:ArrayReader />
                            </Reader>
                        </ext:Store>
                    </Store>                        
            </ext:MultiCombo>
            <br />
            
            <ext:Label runat="server" Text="ExplicitStoreCombo's Selections:" /><ext:Label runat="server" ID="lblDisplay2" Text="... nothing yet" />
            <br />
            <ext:MultiCombo runat="server" ID="ExplicitStoreCombo" SelectionMode="Selection" DisplayField="name" ValueField="abbr">
                 <Store>
                        <ext:Store ID="explicitStore" runat="server">
                            <Model>
                                <ext:Model runat="server">
                                    <Fields>
                                        <ext:ModelField Name="abbr" />
                                        <ext:ModelField Name="name" />                                    
                                    </Fields>
                                </ext:Model>
                            </Model>
    
                            <Reader>
                                <ext:ArrayReader />
                            </Reader>
                        </ext:Store>
                    </Store>                        
            </ext:MultiCombo>
            <br />
    
            <ext:Button
                ID="Button1"
                runat="server"            
                Text="Load MultiCombo w/ DirectMethod"
                >
                <Listeners>
                    <Click Handler="App.direct.DM_RefreshMultiCombo();" />
                </Listeners>            
            </ext:Button>
    
            <ext:Label runat="server" Text="Label2 display before:" /><ext:Label runat="server" ID="lblDisplay3" Text="Not checked." />
            <br />
            <ext:Label runat="server" Text="Label2 display after:" /><ext:Label runat="server" ID="lblDisplay4" Text="Not checked." />
            <ext:Button
                ID="Button3"
                runat="server"            
                Text="Refresh MultiCombo selection status w/ DirectMethod"
                >
                <Listeners>
                    <Click Handler="App.direct.DM_GetComboSelItems();" />
                </Listeners>            
            </ext:Button>
    
            <ext:Button
                ID="Button2"
                runat="server"            
                Text="Load MultiCombo w/ DirectEvent"            
                >
                <DirectEvents>
                    <Click OnEvent="DE_RefreshMultiCombo" />
                </DirectEvents>
            </ext:Button>
        </form>
    </body>
    </html>
    Fabrício Murta
    Developer & Support Expert

Similar Threads

  1. Combobox.SelectedItems null value
    By Nshikov in forum 3.x Help
    Replies: 3
    Last Post: Nov 17, 2015, 12:53 PM
  2. Replies: 2
    Last Post: Sep 30, 2015, 6:52 AM
  3. Replies: 1
    Last Post: Jun 17, 2015, 1:45 PM
  4. [CLOSED] Setting SelectedItems of a combobox from MVC Model
    By hikalkan in forum 2.x Premium Help
    Replies: 1
    Last Post: Apr 19, 2013, 11:50 AM
  5. Combobox SelectedItems by value icw store
    By prost in forum 2.x Help
    Replies: 1
    Last Post: Oct 23, 2012, 10:06 AM

Posting Permissions