Asp.net DetailsView\u ModeChanged方法在使用FindControl方法的特定模式下找不到控件
我有一个关于商店产品的详细视图控制 当我点击DetailsView控件的“编辑”按钮时,我想绑定一个下拉列表来列出产品类别,并在其中选择当前的产品类别 我使用“ModeChanged”方法选择当前产品类别,如下所示: 编辑:标记:Asp.net DetailsView\u ModeChanged方法在使用FindControl方法的特定模式下找不到控件,asp.net,data-binding,detailsview,Asp.net,Data Binding,Detailsview,我有一个关于商店产品的详细视图控制 当我点击DetailsView控件的“编辑”按钮时,我想绑定一个下拉列表来列出产品类别,并在其中选择当前的产品类别 我使用“ModeChanged”方法选择当前产品类别,如下所示: 编辑:标记: <asp:DetailsView ID="dtlProduct" runat="server" DataSourceID="ProductDetailsLinqDataSource" AutoGenerateRows="False"
<asp:DetailsView ID="dtlProduct" runat="server"
DataSourceID="ProductDetailsLinqDataSource" AutoGenerateRows="False"
DataKeyNames="ProductID">
<Fields>
<asp:BoundField DataField="ProductName"
SortExpression="ProductName" />
<asp:TemplateField>
<ItemTemplate>
<asp:Label Text='<%# Eval("ProductCategory.CategoryName") %>' runat="server" />
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList ID="ddlCategory" runat="server" DataSourceID="LDS_ProductsCategories"
DataTextField="CategoryName" DataValueField="CategoryID" Width="200px">
</asp:DropDownList>
<asp:LinqDataSource ID="LDS_ProductsCategories" runat="server"
ContextTypeName="ProductsDataClassesDataContext"
Select="new (CategoryID, CategoryName)" TableName="ProductCategories">
</asp:LinqDataSource>
</EditItemTemplate>
</asp:TemplateField>
</Fields>
</asp:DetailsView>
FindControl方法找不到“ddlcontrole”(返回null),尽管它存在于EditTemplateField中
我不知道出了什么问题
我想使用“DropDownList的PreRender”事件来实现我的目标,但我想知道是什么错了
非常感谢……看起来您需要先找到您的编辑容器。看看你的问题,如果我理解正确的话,我可能会建议使用Databound事件并将下拉列表绑定到那里 查看此链接: 我还认为您应该移动ProductCategories数据源:
<asp:LinqDataSource ID="LDS_ProductsCategories" runat="server"
ContextTypeName="ProductsDataClassesDataContext"
Select="new (CategoryID, CategoryName)" TableName="ProductCategories">
</asp:LinqDataSource>
到编辑模板之外(它可以存在于detailsview之外) 看起来您需要先找到您的编辑容器。看看你的问题,如果我理解正确的话,我可能会建议使用Databound事件并将下拉列表绑定到那里 查看此链接: 我还认为您应该移动ProductCategories数据源:
<asp:LinqDataSource ID="LDS_ProductsCategories" runat="server"
ContextTypeName="ProductsDataClassesDataContext"
Select="new (CategoryID, CategoryName)" TableName="ProductCategories">
</asp:LinqDataSource>
到编辑模板之外(它可以存在于detailsview之外) 谢谢,我怎样才能找到编辑容器?我已经添加了asp.net标记,您能指导我吗?谢谢,我怎样才能找到编辑容器?我已经添加了asp.net标记,您能指导我吗?