C# 我可以从数据绑定的Gridview中的Eval()方法获得返回值吗?
请参考下面的代码。模板字段是gridview的一部分。我需要将字符串从Boundfield“TriggerEvent”传递给方法“Alert()”,该方法应该对字符串执行一些操作,并将其显示回网格中。我在这方面遇到了可以解释的错误。如何实现此功能C# 我可以从数据绑定的Gridview中的Eval()方法获得返回值吗?,c#,asp.net,gridview,C#,Asp.net,Gridview,请参考下面的代码。模板字段是gridview的一部分。我需要将字符串从Boundfield“TriggerEvent”传递给方法“Alert()”,该方法应该对字符串执行一些操作,并将其显示回网格中。我在这方面遇到了可以解释的错误。如何实现此功能 <asp:TemplateField HeaderText="TriggerEvent" SortExpression="TriggerEvent" ItemStyle- Wrap="false"> <ItemT
<asp:TemplateField HeaderText="TriggerEvent" SortExpression="TriggerEvent" ItemStyle- Wrap="false">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Alert(Eval("TriggerEvent")) %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
由于Eval返回对象,而Alert需要字符串,您可以使用
将is转换为
:
Text='<%# Alert(Eval("TriggerEvent") as string) %>'
Text=''
如何以及在何处声明警报
?还有,错误是什么?请在绑定之前进行处理。在绑定期间,您应该只执行简单的格式化操作。没有逻辑计算。@Candide,预处理的问题是,它是一个巨大的数据集,如果我按每个“数据行”访问数据字段并将更新的值放回数据集以最终绑定,则处理是连续的。我正在寻找一些并行操作,可以同时对所有行中的特定列进行预处理。谢谢你@Andrei,错误是因为Eval()不“返回”输入到Alert()方法的字符串。警报是集中声明的,作为一个公共实用程序在任何地方都可用。@ShwetaSaxena,Eval实际上不返回字符串,它返回对象。在C#中没有全局声明的方法,它必须是某个类的一部分这给了我一个编译异常“名称'Bind'在当前上下文中不存在”},是因为我也在做:Text=''?@ShwetaSaxena,你一定要确保你马上把所有的细节都写进问题里Eval
和Bind
是非常不同的事情Eval
是一个简单的函数,Bind
是一个特殊的结构,支持双向数据绑定。使用Bind
的唯一方法是
,您不能对其调用函数或将结果强制转换为其他内容-ASP.NET根本无法在任何其他形式中识别它如何将此更新的值绑定到gridview?该解决方案将生成空白的gridview。。我的目的是更新“TriggerEvent”值并在gridview中显示它。@ShwetaSaxena,您想如何更新它?如果是网格视图,则需要避免使用绑定周围的任何其他函数。若您只想在网格视图中显示它并在其他地方更新,那个么eval就足够了