繁体   English   中英

如何从aspx页面调用代码隐藏方法?

[英]How to call a code-behind method from aspx page?

我有一个包含一个名为DevList的字段的对象,它定义如下

public List<string> DevList { get; set; }

我还定义了一个名为DisplayListOfDevelopers的方法,该方法应该连接开发人员列表并将其显示为一个字符串。

这就是我从aspx调用方法的方法。

<asp:TemplateField HeaderText = "Developer(s)">
 <ItemTemplate>
   <asp:Label 
        ID="_lblDevList" 
        runat="server" 
        Text= '<%# DisplayListOfDevelopers(DevList) %>'>
   </asp:Label>
 </ItemTemplate>
</asp:TemplateField>

但是,我收到了这个错误: 当前上下文中不存在名称'DevList'

我错过了什么吗?

编辑

_gvStatus = ds;
_gvStatus.DataBind();

其中ds只是一个包含DevList的对象列表。

谢谢你的帮助

假设这是你的班级的样子:

public class MyItem
{
    public List<string> DevList { get; set; }
}

然后

ds = List<MyItem>();

做这个:

在您的代码隐藏中:

protected string DisplayListOfDevelopers(object _devList)
{
    //Cast your dev list into the correct object
}

在你的标记中:

<asp:TemplateField HeaderText = "Developer(s)">
 <ItemTemplate>
   <asp:Label 
        ID="_lblDevList" 
        runat="server" 
        Text= '<%# DisplayListOfDevelopers(Eval("DevList")) %>'>
   </asp:Label>
 </ItemTemplate>
</asp:TemplateField>

只需确保您的代码隐藏功能受到保护或公开。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM