我的datalist数据绑定是通过在itemtemplate加上若干label然后在前台html利用类似如下代码(在label的text属性填写
 <%# DataBinder.Eval(Container.DataItem,"id") %>
<%# DataBinder.Eval(Container.DataItem,"id") %>效果一样)<%# DataBinder.Eval(Container.DataItem,"id") %>来绑定数据
 <asp:LinkButton id="btnFile" runat="server" CommandName="Select">
<asp:LinkButton id="btnFile" runat="server" CommandName="Select"> <%# DataBinder.Eval(Container.DataItem,"name") %>
<%# DataBinder.Eval(Container.DataItem,"name") %> </asp:LinkButton>
</asp:LinkButton><%# DataBinder.Eval(Container.DataItem,"name") %>但是最后发现如果lable也这样绑定的话,那么在itemcommand事件通过下面的代码将会得不到拉嗲拉里面的值
 Label mypid1 = (Label)e.Item.FindControl("lblID");
    Label mypid1 = (Label)e.Item.FindControl("lblID"); string id1 = mypid1.Text;
                        string id1 = mypid1.Text; Label mytype1 = (Label)e.Item.FindControl("lblType");
                        Label mytype1 = (Label)e.Item.FindControl("lblType"); string ntype1 = mytype1.Text;
                        string ntype1 = mytype1.Text;后来经过csdn提问知道如果换成如下写法
 <asp:Label id="lblID" runat="server" Width="0px" Height="0px" Text='<%# DataBinder.Eval(Container.DataItem,"id") %>'>
<asp:Label id="lblID" runat="server" Width="0px" Height="0px" Text='<%# DataBinder.Eval(Container.DataItem,"id") %>'> </asp:Label>
</asp:Label>就能在后台的itemcommand事件里面取到值了,但是别人也没怎么说清楚原因,只是说如果是前面一种写法的话,那么仅仅只是有个显示文字将不写入__viewstate,所以在itemcommand里面是得不到这个值。
希望知道的哥们能给我讲明,不胜感激
<%# DataBinder.Eval(Container.DataItem,"name") %><%# DataBinder.Eval(Container.DataItem,"name") %><%# DataBinder.Eval(Container.DataItem,"name") %>
 
                    
                     
                    
                 
                    
                 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号