[CLOSED] Items in comboBox should be loaded when user clicks

  1. #1

    [CLOSED] Items in comboBox should be loaded when user clicks

    Hi,

    On Page load the combobox should be loaded empty. When the user clicks then the items should be fetched. I tried with QueryMode="Remote" and PageProxy as well. Here is the code. Can someone help here?

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ComboboxRemote.aspx.cs"
    Inherits="EXTdotNetV2.ComboboxRemote" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
    <title></title>
    </head>
    <body>
    <form id="form1" runat="server">
    <ext:ResourceManager runat="server" ID="ResourceManager1">
    </ext:ResourceManager>
    <div>
    <ext:MultiCombo runat="server" ID="MultiCombo1" QueryMode="Remote">
    <Store>
    <ext:Store ID="Store1" runat="server">
    <Proxy>
    <ext:PageProxy DirectFn="App.direct.CreateDataTable">
    <Reader>
    <ext:JsonReader />
    </Reader>
    </ext:PageProxy>
    </Proxy>
    <Model>
    <ext:Model ID="Model1" runat="server">
    <Fields>
    <ext:ModelField Name="Fruit_NAME">
    </ext:ModelField>
    </Fields>
    </ext:Model>
    </Model>
    </ext:Store>
    </Store>
    </ext:MultiCombo>
    </div>
    </form>
    </body>
    </html>
    Codebehind

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using Ext.Net;
    using System.Data;
    using System.Data.OracleClient;
    using System.IO;
    
    namespace EXTdotNetV2
    {
    public partial class ComboboxRemote : System.Web.UI.Page
    {
    protected void Page_Load(object sender, EventArgs e)
    {
    // DataTable dtstore = CreateDataTable();
    }
    
    public DataTable CreateDataTable()
    {
    DataTable dt = new DataTable();
    dt.TableName = "Fruits";
    dt.Columns.Add("Fruit_NAME");
    
    dt.Rows.Add("Apple");
    dt.Rows.Add("Apricot");
    dt.Rows.Add("Mango");
    dt.Rows.Add("Monkey");
    dt.Rows.Add("Money");
    dt.Rows.Add("Gauva");
    return dt;
    }
    }
    }
    Last edited by Daniil; Apr 02, 2013 at 4:07 AM. Reason: [CLOSED]
  2. #2
    Hi Tarun,

    You are on the right way. Just you have to correct the following.

    1. Set the [DirectMethod] attribute for the method.

    2. Set a DisplayField for MultiCombo.

    3. Set the Store's AutoLoad to false.

    Example
    <%@ Page Language="C#" %>
    
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    
    <%@ Import Namespace="System.Data" %>
    
    <script runat="server">
        [DirectMethod]
        public DataTable CreateDataTable()
        {
            DataTable dt = new DataTable();
            dt.TableName = "Fruits";
            dt.Columns.Add("Fruit_NAME");
    
            dt.Rows.Add("Apple");
            dt.Rows.Add("Apricot");
            dt.Rows.Add("Mango");
            dt.Rows.Add("Monkey");
            dt.Rows.Add("Money");
            dt.Rows.Add("Gauva");
            return dt;
        }
    </script>
    
    <!DOCTYPE html>
    <html>
    <head runat="server">
        <title>Ext.NET v2 Example</title>
    </head>
    <body>
        <form runat="server">
            <ext:ResourceManager runat="server"/>
    
            <ext:MultiCombo runat="server" DisplayField="Fruit_NAME" QueryMode="Remote">
                <Store>
                    <ext:Store ID="Store1" runat="server" AutoLoad="false">
                        <Proxy>
                            <ext:PageProxy DirectFn="App.direct.CreateDataTable">
                                <Reader>
                                    <ext:JsonReader />
                                </Reader>
                            </ext:PageProxy>
                        </Proxy>
                        <Model>
                            <ext:Model runat="server">
                                <Fields>
                                    <ext:ModelField Name="Fruit_NAME" />
                                </Fields>
                            </ext:Model>
                        </Model>
                    </ext:Store>
                </Store>
            </ext:MultiCombo>
        </form>
    </body>
    </html>
    P.S. Pleas take a note how the sample is formatted.

Similar Threads

  1. Replies: 2
    Last Post: Jun 06, 2012, 1:17 PM
  2. Edit store record when user clicks on the row
    By Mr.Techno in forum 1.x Help
    Replies: 6
    Last Post: Aug 29, 2011, 1:40 PM
  3. Replies: 3
    Last Post: Apr 08, 2010, 5:28 PM
  4. Replies: 1
    Last Post: May 27, 2009, 4:55 AM
  5. Replies: 2
    Last Post: May 27, 2009, 4:51 AM

Posting Permissions