首页 新闻 会员 周边 捐助

如何动态修改数据源绑定Eval的值

0
悬赏园豆:20 [已解决问题] 解决于 2009-06-21 14:21

aspx页面里面放了个datalist,ItemTemplate 里面放了好几个控件,想根据不同的条件来动态修改某个控件绑定的值,不知道应该如何做。代码如下,主要是想修改checkbox的checked绑定的值,比如我想在cs文件代码里把checked绑定为IsNew。

 

Code
<asp:DataList runat="server" ID="rep_menu" DataKeyField="MenuId" HorizontalAlign="Left" RepeatColumns="7" RepeatDirection="Vertical" RepeatLayout="Table" >
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" Text='<%# Eval("MenuName") %>' Checked='<%# Eval("IsAlways") %>' TextAlign="Left" />
<asp:HiddenField ID="hd_MenuId" Value='<%# Eval("MenuId") %>' runat="server" />
</ItemTemplate>
</asp:DataList>

 

问题补充: 谢谢 斯克迪亚 的回答,可能我问的不是很清楚,我的意思是当页面第一次显示的时候,checkbox1的Checked是绑定为IsAlways 字段的,当我点击其他的按钮的时候,我希望它绑定为IsNew字段,并不需要双向绑定,只是要动态的改变绑定字段。
帝之晓的主页 帝之晓 | 初学一级 | 园豆:98
提问于:2009-06-20 23:08
< >
分享
最佳答案
0

请直接移步参看我这篇文章吧:

http://www.cnblogs.com/SkyD/archive/2009/06/12/1502387.html

相信你能在其中找到答案。

 

“比如我想在cs文件代码里把checked绑定为IsNew”

Eval是单向绑定,作用仅仅是从数据库读取信息并显示

如果需要双向绑定,就换成Bind

 

如果你仍未找出解决办法,那么请作出更详尽的补充说明,比如你期待的结果将是什么样子的?你的判断条件是什么?从何处获得该条件?

斯克迪亚 | 老鸟四级 |园豆:4124 | 2009-06-20 23:32
其他回答(2)
0

Checked='<%# MyCondition ? Eval("IsAlways")  : Eval("IsNew") %>'

MyCondition 封装成你的页面的一个bool值的属性。

Azuresong | 园豆:3565 (老鸟四级) | 2009-06-21 01:35
0

其实很简单:

<%# Eval(GetFieldToBind()) %>

麦舒 | 园豆:452 (菜鸟二级) | 2009-06-21 09:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册