[CLOSED] Dynamic userControl load with DirectMethod

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #1

    [CLOSED] Dynamic userControl load with DirectMethod

    Hi,

    Since DirectMethods TabChange event doesn't work (infinitive loop after first tab change which I described here: http://forums.ext.net/showthread.php...vent-TabChange)

    I've decided to give a try DirectMethods which I've put in My UserControl Test.ascx

    here's my sample used v1.5.0 )couldn't find v1.6:(:

    Page.master
    <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Page.master.cs" Inherits="Ext1._6Test.Page" %>
    
    <%@ Register assembly="Ext.Net" namespace="Ext.Net" tagPrefix="ext"  %>
    
    <!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 id="Head1" runat="server">
        <title></title>
        <asp:ContentPlaceHolder ID="head" runat="server">
        </asp:ContentPlaceHolder>
    </head>
    <body>
        <form id="form1" runat="server">
            <ext:ResourceManager runat="server"></ext:ResourceManager>
            <ext:Viewport runat="server">
                <LayoutConfig>
                    <ext:VBoxLayoutConfig runat="server" Align="Stretch"/>
                </LayoutConfig>
                <Items>
                    <ext:Container runat="server" Height="70">
                        <LayoutConfig>
                            <ext:VBoxLayoutConfig runat="server" Align="Stretch"/>
                        </LayoutConfig>
                        <Items>
                            <ext:Container runat="server" Height="40">
                                <Content>
                                    Top
                                </Content>
                            </ext:Container>
                            <ext:Toolbar runat="server" Height="30">
                                <Items>
                                    <ext:Button runat="server" Text="Start" OnClientClick="window.location.href='Start.aspx'"></ext:Button>
                                    <ext:Button runat="server" Text="Test" OnClientClick="window.location.href='Test.aspx'"></ext:Button>
                                </Items>
                            </ext:Toolbar>
                        </Items>
                    </ext:Container>
                    <ext:Container runat="server" Layout="Fit" Flex="1">
                        <Content>
                            <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
            
                            </asp:ContentPlaceHolder>
                        </Content>
                    </ext:Container>
                </Items>
            </ext:Viewport>
        </form>
    </body>
    </html>
    pages Start and Test .aspx
    <%@ Page Title="" Language="C#" MasterPageFile="~/Page.Master" AutoEventWireup="true" CodeBehind="Start.aspx.cs" Inherits="Ext1._6Test.Start" %>
    <%@ Register assembly="Ext.Net" namespace="Ext.Net" tagPrefix="ext" %>
    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
        <ext:Container runat="server" Layout="Fit">
            <Items>
                <ext:ButtonBase runat="server" Text="btn Start Page"></ext:ButtonBase>
            </Items>
        </ext:Container>
    </asp:Content>
    
    <%-- Test.aspx --%>
    <%@ Page Title="" Language="C#" MasterPageFile="~/Page.Master" AutoEventWireup="true" CodeBehind="Test.aspx.cs" Inherits="Ext1._6Test.Test" %>
    <%@Register  tagPrefix="uc" tagName="Test" src="controls/Test.ascx"%>
    <%@Register assembly="Ext.Net" namespace="Ext.Net" tagPrefix="ext" %>
    
    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
        <ext:Container runat="server" Layout="Fit">
            <Content>
                <uc:Test runat="server"/>
            </Content>
        </ext:Container>
    </asp:Content>
    userControls Test and DynamicControl *.ascx
    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Test.ascx.cs" Inherits="Ext1._6Test.controls.Test" %>
    <%@ Import Namespace="Ext1._6Test.controls" %>
    <%@ Register TagPrefix="ext" Namespace="Ext.Net" Assembly="Ext.Net" %>
    
    <script runat="server">
    protected void Page_Load(object sender, EventArgs e)
            {
    
            }
    
            [DirectMethod]
            public void LoadControl(Ext.Net.Panel panel)
            {
                DynamicControl dynamicControl = (DynamicControl) LoadControl("/DynamicControl.ascx");
                dynamicControl.ID = "dynamic_Control_in_" + panel.ID;
                panel.ContentControls.Add(dynamicControl);
                panel.UpdateContent();
            }
    protected void tPanel_TabChange(object sender, DirectEventArgs e)
            {
                TabPanel tPanel = (TabPanel) sender;
                Ext.Net.Panel panel = (Ext.Net.Panel)tPanel.Items[tPanel.ActiveIndex];
                if (panel != null && panel.Items.Count==0)
                {
                    DynamicControl dc = (DynamicControl) LoadControl("DynamicControl.ascx");
                    dc.ID = "dynamicControl_" + panel.ID;
                    panel.ContentControls.Add(dc);
                    panel.UpdateContent();
                }
            }
    </script>
    
    <ext:Container runat="server" Layout="Border" ID="container">
        <Items>
            <ext:Panel runat="server" Region="North" Height="40">
                <Items>
                    <ext:Button runat="server" Text="btn north"></ext:Button>
                </Items>
            </ext:Panel>
            <ext:Panel runat="server" Region="Center">
                <Items>
                    <ext:TextField runat="server" Text="center"></ext:TextField>
                </Items>
            </ext:Panel>
            <ext:TabPanel runat="server" Region="South" Height="300" Collapsed="true" Collapsible="False" ActiveIndex="0">
                <Items>
                    <ext:Panel runat="server" ID="tab1" Title="Tab1"></ext:Panel>
                    <ext:Panel runat="server" ID="tab2" Title="Tab2"></ext:Panel>
                </Items>
                <Listeners>
                    <Activate Handler="Ext.net.DirectMethods.LoadControl(p)"></Activate>
                </Listeners>
    <DirectEvents>
                    <TabChange Before="if (!this.ignoredFirstTabChange) { this.ignoredFirstTabChange = true; return false; }" OnEvent="tPanel_TabChange"></TabChange>
                </DirectEvents>
            </ext:TabPanel>
        </Items>
    </ext:Container>
    
    <%-- DynamicControl.ascx --%>
    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="DynamicControl.ascx.cs" Inherits="Ext1._6Test.controls.DynamicControl" %>
    <%@Register assembly="Ext.Net" namespace="Ext.Net" tagPrefix="ext" %>
    
    <script runat="server">
    protected void Page_Load(object sender, EventArgs e)
            {
                txt.Text = this.ID;
            }
    </script>
    
    <ext:TextField runat="server" ID="txt"></ext:TextField>
    Question is why this DirectMethod doesn't work (doesn't even be call after click in second tab).

    Am I miss something? How can I handle this?

    Regards,
    ViDom

    Edit:
    Tryed also change this:
    <Activate Handler="Ext.net.DirectMethods.LoadControl(p)"></Activate>
    to:
    <Activate Handler="Ext.net.DirectMethods.Test.LoadControl(p)"></Activate>
    It's make no changes still not working.
    Last edited by Daniil; Oct 04, 2012 at 6:19 PM. Reason: [CLOSED]

Similar Threads

  1. dynamic load usercontrol in ext:pannel.
    By PrasadJoshi in forum 1.x Help
    Replies: 5
    Last Post: Jan 17, 2011, 9:54 AM
  2. [CLOSED] [1.0] Load dynamic UserControl with Coolite Controls.
    By FVNoel in forum 1.x Legacy Premium Help
    Replies: 5
    Last Post: Oct 22, 2010, 10:27 AM
  3. [CLOSED] DirectMethod and UserControl
    By jmcantrell in forum 1.x Legacy Premium Help
    Replies: 4
    Last Post: Jun 21, 2010, 7:15 PM
  4. [CLOSED] [1.0] DirectMethod - Page . UserControl . UserControl
    By Patrick in forum 1.x Legacy Premium Help
    Replies: 4
    Last Post: Feb 25, 2010, 9:33 AM
  5. [CLOSED] XRender UserControl DirectMethod
    By amitpareek in forum 1.x Legacy Premium Help
    Replies: 10
    Last Post: Jan 22, 2010, 1:03 PM

Tags for this Thread

Posting Permissions