1

DetailsView 内に 2 つのドロップダウンがあり、カスケードで作業したいのですが、領域にはさまざまな問題が含まれており、これらの問題は選択した領域に依存するという考えですが、次のエラーが発生します。

Eval()、XPath()、および Bind() などのデータバインディング メソッドは、データバインドされたコントロールのコンテキストでのみ使用できます。

次の行で:

<asp:DropDownList ID="ddlIssue" runat="server"
    DataTextField="NameIssue" DataValueField="IdIssue" 

完全なコードは次のとおりです。

<asp:TemplateField HeaderText="Area" SortExpression="IdArea">
<EditItemTemplate> 
  <asp:DropDownList ID="ddlArea" runat="server"
      DataSourceID="SqlDataSource145711" DataTextField="NameArea"
      DataValueField="IdArea" AutoPostBack="true"
      AppendDataBoundItems="true" SelectedValue='<%# Bind("IdArea") %>'> 
  </asp:DropDownList>
  <asp:SqlDataSource ID="SqlDataSource145711" runat="server"
    ConnectionString="<%$ ConnectionStrings:BaseDatosCJConnectionString %>"
    SelectCommand="SELECT IdArea, NameArea FROM AREA">
  </asp:SqlDataSource>
</EditItemTemplate>
<ItemTemplate>
  <asp:Label ID="Label5" runat="server"
    Text='<%# Bind("IdArea") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>

<asp:TemplateField HeaderText="Issue">       
<EditItemTemplate>
**<asp:DropDownList ID="ddlIssue" runat="server"
    DataTextField="NameIssue" DataValueField="IdIssue"**
    DataSourceID="SqlDataSource22" SelectedValue='<%# Bind("IdIssue") %>'
</asp:DropDownList>
<asp:SqlDataSource runat="server"
  ID="sqlDataSource22"
  ConnectionString="<%$ ConnectionStrings:BaseDatosCJConnectionString %>"
  SelectCommand="SELECT IdIssue, NameAIssue, IdArea FROM ISSUE"
  FilterExpression="IdArea = '{0}'">
  <FilterParameters>
  <asp:ControlParameter Name="Param" ControlID="ddlArea"
    PropertyName="SelectedValue" />
  </FilterParameters>                       
</asp:SqlDataSource>

</EditItemTemplate>
</asp:TemplateField>  

このエラーの解決策を教えていただけますか?

コードから何かをしなければなりませんか?

祝福

4

1 に答える 1

0

問題のある領域を次のようにしたくありませんか。

<asp:DropDownList ID="ddlIssue" runat="server"
  DataTextField="NameIssue" DataValueField="IdIssue"
  DataSourceID="SqlDataSource22" SelectedValue='<%# Bind("IdIssue") %'>

アポストロフィ'は閉じ括弧の前にあることに注意してください。

于 2012-04-25T19:49:01.273 に答える