[CLOSED] MultiSelect "select all" from client side

Page 2 of 2 FirstFirst 12
  1. #11
    Hi,

    These methods have been added to the toolkit. (SVN revision #3132)

    Here is an example.

    Example
    <%@ Page Language="C#" %>
    
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    
    <script runat="server">
        protected void SelectAll(object sender, DirectEventArgs e)
        {
            this.MultiSelect1.SelectAll();
        }
    
        protected void DeselectAll(object sender, DirectEventArgs e)
        {
            this.MultiSelect1.DeselectAll();
        }
    
        protected void DeselectAllWithSuppressEvent(object sender, DirectEventArgs e)
        {
            this.MultiSelect1.DeselectAll(true);
        }
    </script>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>MultiSelect API - Ext.Net Example</title>
    </head>
    <body>
        <form runat="server">
        <ext:ResourceManager runat="server" />
        <ext:MultiSelect ID="MultiSelect1" runat="server">
            <Items>
                <ext:ListItem Text="Text 1" Value="Value1" />
                <ext:ListItem Text="Text 2" Value="Value2" />
                <ext:ListItem Text="Text 3" Value="Value3" />
            </Items>
            <Listeners>
                <AfterRender Handler="this.view.on( 'selectionchange', 
                                                    function() { 
                                                        Ext.Msg.notify('', 'selectionchange'); 
                                                    });"/>
            </Listeners>
        </ext:MultiSelect>
        <ext:Button 
            runat="server" 
            Text="Client selectAll()">
            <Listeners>
                <Click Handler="#{MultiSelect1}.selectAll();" />
            </Listeners>
        </ext:Button>
        <ext:Button 
            runat="server" 
            Text="Client deselectAll()">
            <Listeners>
                <Click Handler="#{MultiSelect1}.deselectAll();" />
            </Listeners>
        </ext:Button>
        <ext:Button 
            runat="server" 
            Text="Client deselectAll() with event supressing">
            <Listeners>
                <Click Handler="#{MultiSelect1}.deselectAll(true);" />
            </Listeners>
        </ext:Button>
        <ext:Button 
            runat="server" 
            Text="Server SelectAll()" 
            OnDirectClick="SelectAll"/>
        <ext:Button 
            runat="server" 
            Text="Server DeselectAll()" 
            OnDirectClick="DeselectAll"/>
        <ext:Button 
            runat="server" 
            Text="Server DeselectAll() with event supressing" 
            OnDirectClick="DeselectAllWithSuppressEvent"/>
        </form>
    </body>
    </html>
  2. #12

    With Paging Doesn't go

    Hi,

    I have problem with selectall method.

    The scenario is with pagesize multiselect attribute set, and instead of button click event i try to select all in PreRender MultiSelect event. I know that for you this make no sense but in my case i need to select all items on every page.
  3. #13
    Hi,

    Yes, .selectAll() selects only current page items.

    To select all pages items I can suggest this way. But I'm not sure it will suite your needs.

    Example

    <%@ Page Language="C#" %>
    
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    <script runat="server">
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!X.IsAjaxRequest)
            {
                Store store = this.MultiSelect1.GetStore();
                store.DataSource = new object[] 
                { 
                    new object[] { 1, "Item1" },
                    new object[] { 2, "Item2" },
                    new object[] { 3, "Item3" }
                };
                store.DataBind();
            }
        }
    
        protected void SelectAll(object sender, DirectEventArgs e)
        {
            this.MultiSelect1.SelectAll();
            this.PagingToolbar1.On("change", "onPageChange");
        }
    
        protected void DeselectAll(object sender, DirectEventArgs e)
        {
            this.MultiSelect1.DeselectAll();
            this.PagingToolbar1.Un("change", "onPageChange");
        }
    </script>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>Ext.Net Example</title>
        <script type="text/javascript">
            var onPageChange = function () {
                MultiSelect1.selectAll();
            };
        </script>
    </head>
    <body>
        <form runat="server">
            <ext:ResourceManager runat="server" />
            <ext:MultiSelect ID="MultiSelect1" runat="server" AutoHeight="true">
                <Store>
                    <ext:Store ID="Store1" runat="server">
                        <Reader>
                            <ext:ArrayReader>
                                <Fields>
                                    <ext:RecordField Name="value" />
                                    <ext:RecordField Name="text" />
                                </Fields>
                            </ext:ArrayReader>
                        </Reader>
                        <AutoLoadParams>
                            <ext:Parameter Name="start" Value="0" Mode="Raw" />
                            <ext:Parameter Name="limit" Value="1" Mode="Raw" />
                        </AutoLoadParams>
                    </ext:Store>
                </Store>
            </ext:MultiSelect>
            <ext:PagingToolbar ID="PagingToolbar1" runat="server" PageSize="1" StoreID="Store1" />
            <ext:Button runat="server" Text="Select all" OnDirectClick="SelectAll" />
            <ext:Button runat="server" Text="Deselect all" OnDirectClick="DeselectAll" />
        </form>
    </body>
    </html>
Page 2 of 2 FirstFirst 12

Similar Threads

  1. [CLOSED] How does "MaskCls" work for "AutoLoad" mask in panel control
    By leon_tang in forum 1.x Legacy Premium Help
    Replies: 5
    Last Post: Jul 19, 2012, 12:09 PM
  2. Replies: 1
    Last Post: Jun 26, 2012, 11:29 AM
  3. Replies: 5
    Last Post: May 02, 2012, 5:37 PM
  4. [CLOSED] How to "commit" changes to Grid on the client side?
    By vadym.f in forum 1.x Legacy Premium Help
    Replies: 2
    Last Post: Feb 02, 2012, 3:15 PM
  5. Replies: 4
    Last Post: Oct 11, 2011, 2:42 AM

Posting Permissions