c# - ASP.Net - 从包含数据绑定(bind)的标记调用方法

标签 c# asp.net

我在 ASP.NET 中有一个用 C# 编写的用户控件。此用户控件在代码隐藏中有一个方法,定义如下:

protected string GetGreeting(string name)
{
  if (String.IsNullOrEmpty(name))
  {
    return "Hello";
  }
  else
  {
    return "Hello " + name;
  }
}

我的标记如下所示:

<asp:Repeater ID="listRepeater" ClientIDMode="Static" runat="server" OnLoad="listRepeater_Load">
    <HeaderTemplate>
        <table id="listTable" style="width:100%;">
            <thead><tr>
                <th>Greeting</th>
                <th>Actions</th>
            </tr></thead>
            <tbody>    
    </HeaderTemplate>

    <ItemTemplate>
            <tr>
                <td><%# GetGreeting("FullName")%></td>
                <td><a href='#'>view info</a></td>
            </tr>
     </ItemTemplate>

     <FooterTemplate>
            </tbody>
        </table>
    </FooterTemplate>
</asp:Repeater>

如何绑定(bind)数据源中记录的 FullName 属性?现在,我不断看到“Hello FullName”。我想看到类似“Hello John Smith”的内容。我做错了什么?

谢谢!

最佳答案

在您的 .aspx 中,您正在调用 GetGreeting("FullName")。这从字面上传递了 "FullName"

尝试

GetGreeting(Eval("FullName").ToString())

关于c# - ASP.Net - 从包含数据绑定(bind)的标记调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7132578/

相关文章:

c# - 查询包含对在不同数据上下文中定义的项目的引用

javascript - 尝试将错误消息从 Controller 传递到 View 而不重新加载页面(MVC)

c# - 在代码隐藏中使用(静态)HTML 控件,使用 C#/ASP.NET 进行编码

c# - FileSystemWatcher 无法访问文件,因为已在其他进程中使用

c# - 使用 HtmlAgilitypack 问题解析表

c# - 如何显示两个表的搜索结果?

javascript - jquery 拖放表格

c# - 在 C# 中创建简单的嵌入式 http 和 https 应用程序

c# - 在 Windows Phone 8 中使用静态文本转换器

asp.net - 如何向 Ajax Slider 控件添加不同的值?