15

テキストを連結して asp.net Web ページ (aspx) のバインディング式にする構文は何ですか。

たとえば、次のようにバインドされているハイパーリンクがあるとします。

<asp:HyperLink id="lnkID" NavigateUrl='<%# Bind("Link") %>' Target="_blank" 
                        Text="View" runat="server"/>

たとえば、テキストを変更して、バインドされた値を文字列と連結するにはどうすればよいでしょうか? このようなバリエーションは正しくありません。

Text='<%# Bind("ID") + " View" %>'

どちらでもない

Text='<%# String.Concat(Bind("ID"), " View") %>'
4

4 に答える 4

35

代わりに Eval を使用してください。

Text='<%# Eval("ID", "{0} View") %>'

値が更新されない場合も、Eval の方が適しています。Bind では双方向のデータ バインディングが可能です。

于 2008-12-11T21:09:31.980 に答える
8

テンプレート フィールドを使用する場合、タグのテキスト部分に「連結」を配置することもできます。

<asp:TemplateField HeaderText="Name" SortExpression="sortName">
<ItemTemplate>
   <asp:LinkButton ID="lbName" runat="server" OnClick="lbName_Click" CommandArgument='<%# Eval("ID") %>'>
         <%--Enter any text / eval bindind you want between the tags--%>
         <%# Eval("Name") %> (<%# Eval("ID") %>)
   </asp:LinkButton>
</ItemTemplate>

これにより、次のような出力が得られます。

お名前(ID)

テンプレート列の内側。

于 2008-12-12T22:10:11.553 に答える
3

私はString.Format("{0}{1}"良い効果を得るために...前に使用しました。

于 2008-12-11T20:58:43.920 に答える