1

SQLDataSource によってバインドされた DataList コントロールがあります。データ ソースは 2 つの列の値、つまり ID、名前を取得しています。

DataList ItemTemplate は次のようになります。

<DataList>
   <ItemTemplate>
       <asp:Label ID="Label1" runat="server" Text='<%# Eval(Name) %>' />
   </ItemTemplate>
</DataList>

次のように、ラベル ID を最初の列にバインドします。

<asp:Label ID='<%# Eval(ID) %> ...../>

しかし、IDは単純でなければならないというエラーが発生します。

Eval 値を使用してラベル ID への割り当てを生成する方法はありますか?

4

1 に答える 1

2

データバインディングを使用して割り当てることはできませんが、ClientIDにアクセスして他の方法で使用することはできます。

<label for='<%# Container.FindControl("TargetControlID").ClientID %>'>
    Label Text
</label>
<asp:Label ID="TargetControlID" runat="server" Text="Target Control" />
于 2012-11-06T18:12:31.427 に答える