使用TemplateField时的数据绑定错误

时间:2012-05-07 18:54:56

标签: asp.net

当运行包含以下代码的asp.net页面时,我得到“DataBinding:'System.Data.DataRowView'不包含名为'PKComplexID'的属性”错误

<asp:TemplateField HeaderText="Complex">
    <EditItemTemplate>
        <asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:RefahiConnectionString1 %>"
             SelectCommand="SELECT [PKComplexID], [ComplexName] FROM RFH_Complex">
        </asp:SqlDataSource>
        <asp:DropDownList ID="DDLComplex" runat="server" DataTextField="ComplexName" DataValueField="PKComplexID"
            SelectedValue='<%# Bind("PKComplexID") %>' DataSourceID="SqlDataSource2">
        </asp:DropDownList>
    </EditItemTemplate>
    <ItemTemplate>
         <asp:Label ID="Label" runat="server" Text='<%# Bind("ComplexName") %>'></asp:Label>
    </ItemTemplate>
</asp:TemplateField>

它出了什么问题?

1 个答案:

答案 0 :(得分:1)

不要在模板中声明数据源控件; DropDownList将无法找到具有匹配ID的数据源控件。

将数据源控件移到网格之外,您应该全部设置。