1

さて私はうまくいくこれを持っています

<asp:LinkButton ID="abc" runat="server"
Text='<%#Eval("artist") %>'
PostBackUrl='<%#"~/welcome.aspx?artist="+Eval("artist")%>'>

ここで、変数.csファイルであるtestのartistの代わりに<%= str%>を配置したいと思います。

誰かがそれを行う方法を教えてもらえますか?

4

1 に答える 1

1

あなたのための例:

ASCX:

<asp:Repeater ID="repItems" runat="server">
    <ItemTemplate>
        <asp:Panel ID="pnlItem" runat="server">                       
            <asp:LinkButton ID="lnkItem" runat="server" Text='<%# Eval(FieldName) %>' ></asp:LinkButton>                  
        </asp:Panel>
    </ItemTemplate>        
</asp:Repeater>

CS:

public partial class _Default : System.Web.UI.Page
{
    public string FieldName = @"Name";


    protected void Page_Load(object sender, EventArgs e)
    {
        List<ArtistInfo> artists = new List<ArtistInfo>();

        artists.Add( new ArtistInfo() { Name = "Lady GaGa", Location = "Nebraska" });
        artists.Add( new ArtistInfo() { Name = "Justin Timberlake", Location = "Memphis" });

        repItems.DataSource = artists;
        repItems.DataBind();
    }
}

public class ArtistInfo
{
    public string Name { get; set; }
    public string Location { get; set; }
}

単にこの式を評価し、データバインド中にその結果を返すことを意味するので<%# %>、そこに好きなものを入れることができます。この場合、コードビハインドで定義された文字列であるFieldNameの引数を使用してEvalを呼び出しています。

于 2012-08-08T14:19:56.227 に答える