TabContainer中的CascadingDropDown和其他Tab中的Target

时间:2010-06-01 15:04:53

标签: c# asp.net ajax tabcontainer cascadingdropdown

我已经使用TabContainer对页面进行了分割。

之前,此页面使用填充DropDownList的CascadingDropDown。 现在这个DropDownList在另一个标签中。因此,当我尝试查看此页面时,我会捕获异常“Object Reference Null”。

当我更改另一个标签中的值时,如何在另一个标签页面中加载DropDownList?

更新

感谢您的回答,但不幸的是它不起作用。

我在TabContainer之外尝试使用CascadingDropDownExtender,但是再次捕获了Reference null。 使用与子DropDownList相同的Panel中的CascadingDropDownExtender,我有一个javascript警告,表示未找到Parent Control。

这里的代码与CascadingDropDownExtender在同一Panel中作为子DropDownList

<cc2:TabPanel runat="server" HeaderText="Carte Identité" ID="TabCI">
<ContentTemplate>

  <ProspectMgt:MarketSegmentDropDownList ID="MarketSegmentDropDownList1" runat="server"
            AutoPostBack="false" Width="400px"></ProspectMgt:MarketSegmentDropDownList>

        <asp:CompareValidator ID="CompareValidator2" runat="server" CssClass="error" ToolTip="Required"
            ControlToValidate="MarketSegmentDropDownList1" ValueToCompare="-1" Operator="NotEqual"
            ErrorMessage="MktSegment" Display="Dynamic" Font-Bold="True"></asp:CompareValidator>

</ContentTemplate>
</cc2:TabPanel>
    <cc2:TabPanel ID="TabSize"  runat="server" HeaderText="Size & Volume">
<ContentTemplate>

                    <asp:DropDownList ID="DropDownListSize" AutoPostBack="false" runat="server">
                    </asp:DropDownList>  

            <cc2:CascadingDropDown ID="cddSize" runat="server" TargetControlID="DropDownListSize"  
Category="Size" LoadingText="[...]"  
ServicePath="~/Modules/ProspectMgt/WebService/ServiceAjax.asmx" ServiceMethod="GetSizeByMktId"  
ParentControlID="MarketSegmentDropDownList1" />

</ContentTemplate>    

</cc2:TabPanel>

所以我不明白为什么它不起作用。没有TabContainer,它工作得很好。我正在使用AjaxToolKit 30512.但是,我希望删除CascadingDropDownExtender并仅通过javascript管理此问题。

1 个答案:

答案 0 :(得分:0)

CascadingDropDownExtender是否在第一个标签内?如果是,如果你将CascadingDropDownExtender完全拉到标签容器之外,是否可以解决问题?发布一些标记将有助于更轻松地解决这个问题......

HTH。