Hi,
ok, we have a page which looks like that:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Test.aspx.cs" Inherits="Test" %>
<asp:Content ContentPlaceHolderID="MainContent" runat="server">
<ext:Container runat="server">
<LayoutConfig>
<ext:HBoxLayoutConfig Align="Stretch" />
</LayoutConfig>
<Items>
<ext:Container runat="server" Width="400" Layout="VBoxLayout">
<LayoutConfig>
<ext:VBoxLayoutConfig Align="Stretch" />
</LayoutConfig>
<Items>
<ext:TreePanel ID="OtvVerkehrTreePanel" ClientIDMode="Static" runat="server" RootVisible="False" Animate="False" AutoScroll="True" Flex="1" Cls="tree-panel">
<TopBar>
<ext:Toolbar runat="server">
<Items>
<ext:Button runat="server" ID="btnImport" Icon="TableRefresh" ToolTip="<%$ Resources:Site, Import %>">
<DirectEvents>
<Click OnEvent="Import" Failure="Ext.MessageBox.alert(loadFailed, errorDuringAjaxEvent);" />
</DirectEvents>
</ext:Button>
</Items>
</ext:Toolbar>
</TopBar>
<Fields>
<ext:ModelField Name="Bezeichnung" />
</Fields>
<ColumnModel>
<Columns>
<ext:TreeColumn runat="server" DataIndex="Bezeichnung" Flex="1" Sortable="true" Text="<%$ Resources:Test, Bezeichnung %>" />
</Columns>
</ColumnModel>
<View>
<ext:TreeView runat="server" ToggleOnDblClick="false" />
</View>
</ext:TreePanel>
</Items>
</ext:Container>
</Items>
</ext:Container>
<uc:DataImport ID="DataImportUserControl" runat="server" />
</asp:Content>
And we have a user control which is being called from the page:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="DataImport.ascx.cs" Inherits="UserControls.DataImport" %>
<ext:Window ID="winDataImport" runat="server" Width="500" BodyStyle="height:auto; background:white;" Hidden="true" Resizable="false" Modal="true" Layout="FitLayout">
<Content>
<ext:FormPanel ID="pnlDataImport" runat="server" BodyPaddingSummary="5" DefaultAnchor="0" BodyStyle="border:0">
<Defaults>
<ext:Parameter Name="LabelWidth" Value="125" Mode="Raw" />
</Defaults>
<Items>
<ext:Hidden ID="hidImporttyp" runat="server" />
<ext:FieldContainer ID="fctTemplate" runat="server" FieldLabel="<%$ Resources: Site, Template %>">
<Items>
<ext:HyperLink runat="server" ID="lnkTemplate" />
</Items>
</ext:FieldContainer>
</Items>
<Listeners>
<ValidityChange Handler="#{btnImport}.setDisabled(!valid);" />
</Listeners>
</ext:FormPanel>
</Content>
<Buttons>
<ext:Button runat="server" ID="btnImport" Disabled="True" Icon="Add" Text="<%$ Resources:Site, Import %>">
<DirectEvents>
<Click OnEvent="Import" Failure="Ext.MessageBox.alert(loadFailed, errorDuringAjaxEvent);" />
</DirectEvents>
</ext:Button>
<ext:Button runat="server" ID="btnCancel" Icon="Decline" Text="<%$ Resources:Site, Cancel %>">
<Listeners>
<Click Handler="#{winDataImport}.hide(null);"/>
</Listeners>
</ext:Button>
</Buttons>
</ext:Window>
In the code behind of the page we have the event handler Import which looks like that:
public void Import(object sender, DirectEventArgs e)
{
try
{
DataImportUserControl.Show(Page.ResolveUrl("~/Templates/Test.xlsx"));
}
catch (Exception ex)
{
MessageBox.ShowError(Resources.Site.Error, Resources.Site.ErrorGeneralMessage, ex.Message);
}
}
And in the user control the show method looks like that:
public void Show(string templateUrl = "")
{
fctTemplate.Visible = !string.IsNullOrWhiteSpace(templateUrl);
if (!string.IsNullOrWhiteSpace(templateUrl))
{
lnkTemplate.NavigateUrl = templateUrl;
lnkTemplate.Text = Path.GetFileName(templateUrl);
}
winDataImport.Render();
winDataImport.Show();
}
Can you reproduce it? Is there a fix?
Kind regards
Willimaendu