<asp:TemplateField HeaderText="Discrepancy">
<ItemTemplate >
<asp:DropDownList ID="Discrepancy" runat="server>
<asp:ListItem>Select...</asp:ListItem>
<asp:ListItem>Pay Increase</asp:ListItem>
<asp:ListItem>Completed apprenticeship</asp:ListItem>
<asp:ListItem>Annual leave in advance</asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
这是我的dropdownlist,在一个gridview中,当然这个gridview是分页的,在用户点击翻页以后,这个dropdownlist里面的值在回来的时候就又回到了原来的 default的值。也就是说,用户选择项丢失了。我如何能保住这个项那?
我其他的列的内容是用 Container.DateItem ("") 保存的,这里又像问一下,这个有几个不同的词
<%# Container.DataItem("列名")%>
<%#Eval("列名") %>
<%# Bind("列名") %>
这3个 都各有什么不同啊?
------解决方案--------------------------------------------------------
- C# code
1。Eval和Bind的区别 绑定表达式 <%# Eval("字段名") %> <%# Bind("字段名") %>区别 1。eval是只读数据,bind是可更新的.2.当对次表达式操作时候,必须用Eval 如<%# Eval("字段名").ToString().Trim() %>2.若GridView中绑定列里面 设置 内容格式 DataFormateString = ,则 必须把 属性 HtmlCode 设置为false,否则无法起作用;Eval 单向绑定:数据是只读的Bind 双向绑定:数据可以更改,并返回服务器端,服务器可以处理更改后的数据,如存入数据库. ----<%# DataBinder.Eval(Container.DataItem,"dateandtime","")%> //----2006年10月27日----<%# DataBinder.Eval(Container.DataItem,"dateandtime","")%>//----2006年10月27日 8:31:44----<%# DataBinder.Eval(Container.DataItem,"dateandtime","")%>//----2006-10-27 8:31:44----<%# DataBinder.Eval(Container.DataItem,"dateandtime","")%>//----10月27日-<%# DataBinder.Eval(Container.DataItem,"dateandtime","")%>//----Fri, 27 Oct 2006 08:31:44GMT----<%# DataBinder.Eval(Container.DataItem,"dateandtime","")%>//----8:31:44----<%# DataBinder.Eval(Container.DataItem,"dateandtime","")%>//----2006年10月27日 0:31:44----<%# DataBinder.Eval(Container.DataItem,"dateandtime","")%>//----2006年10月