asp.net之DataList学习笔记

此控件满适合企业产品展示类型的站点。

 

设置页面数据源时的代码,通常其表现出所有的功能。

<asp:DataList ID="DataList1" runat="server" DataKeyField="uid" DataSourceID="SqlDataSource1"
           >
            <EditItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False"
                Font-Strikeout="False" Font-Underline="False" ForeColor="Maroon" />
            <AlternatingItemStyle BackColor="Blue" Font-Bold="False" Font-Italic="False"
                Font-Overline="False" Font-Strikeout="False" Font-Underline="False"
                ForeColor="Black" />
            <EditItemTemplate>
                ===========编辑模板========
            </EditItemTemplate>
            <SeparatorStyle Font-Bold="False" Font-Italic="False" Font-Overline="False"
                Font-Strikeout="False" Font-Underline="False" ForeColor="Gray" />
            <SeparatorTemplate>
                ==================分隔符====================
            </SeparatorTemplate>
            <HeaderTemplate>
                =======================页眉模板==========
            </HeaderTemplate>
            <SelectedItemTemplate>
                ===========选择模板================
            </SelectedItemTemplate>
            <FooterTemplate>
                ================页脚模板=======
            </FooterTemplate>
            <ItemTemplate>
                用户id:
                <asp:Label ID="uidLabel" runat="server" Text='<%# Eval("uid") %>' />
                <br />
                用户名:
                <asp:Label ID="usernameLabel" runat="server" Text='<%# Eval("username") %>' />
                <br />
                密码:
                <asp:Label ID="passwordLabel" runat="server" Text='<%# Eval("password") %>' />
                <br />
                性别:
                <asp:Label ID="sexLabel" runat="server" Text='<%# Eval("sex") %>' />
                <br />
                最后登录时间:
                <asp:Label ID="lasttimeLabel" runat="server" Text='<%# Eval("lasttime") %>' />
                <br />
                <br />
            </ItemTemplate>
        </asp:DataList>

 

 

执行效果

=======================页眉模板==========            
                用户id:                1               
                用户名:                honker               
                密码:                123456789               
                性别:                女               
                最后登录时间:                System.Byte[]               
               
            
                ==================分隔符====================            
                用户id:                2               
                用户名:                hacker               
                密码:                123456               
                性别:                男               
                最后登录时间:                System.Byte[]               
               
            
                ================页脚模板=======            

 

 

//页面的数据源手工添加,后台代码框架尽量用vs生成

1、交替项中增加一个编辑按钮

<ItemTemplate>
<asp:LinkButton runat="server" ID="LinkButton1"
                    CommandName="edit" >
                    Edit
                </asp:LinkButton><br /><br />
</ItemTemplate>

  对应的后台代码框架

protected void DataList1_EditCommand(object source, DataListCommandEventArgs e)
        {
            DataList1.EditItemIndex = e.Item.ItemIndex;
        }//显示这行的对应的编辑模板

 

2、编辑模板的页面代码,尽量与交替项模板显示的数据项保持一致 。

<EditItemTemplate>
              ID: <asp:Label ID="Label1" runat="server"
                         Text='<%# Eval("uid") %>'>
                    </asp:Label>
                <br />
                Name: <asp:TextBox ID="username" runat="server"
                         Text='<%# Eval("username") %>'>
                      </asp:TextBox>
                <br />
                Description: <asp:TextBox ID="sex"
                                 runat="server"
                        Text='<%# Eval("sex") %>'>
                     </asp:TextBox>
                <br />
                <asp:LinkButton ID="LinkButton1" runat="server"  
                    CommandName="update" >
                    Save
                </asp:LinkButton>
                 
                <asp:LinkButton ID="LinkButton2" runat="server" CommandName="Cancel">
                    Cencel                  
                </asp:LinkButton>
            </EditItemTemplate>

 编辑模板对应的后台程序编写,

protected void DataList1_UpdateCommand(object source, DataListCommandEventArgs e)
        {   
            //获取主键值的值
            string uid = DataList1.DataKeys[e.Item.ItemIndex].ToString();
            //从编辑项中控件的id来获取对应的值
            String username = ((TextBox)e.Item.FindControl("username")).Text;
            string sex = ((TextBox)e.Item.FindControl("sex")).Text;
            //Response.Write(uid+username+sex);
            //处理数据的代码
            DataList1.EditItemIndex = -1;
            DataList1.DataBind();  
        }
        protected void DataList1_CancelCommand(object source, DataListCommandEventArgs e)
        {
            DataList1.EditItemIndex = -1;
            DataList1.DataBind();
        }
 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值