DataList和ListView数据控件的使用

来源:互联网 发布:张北云计算最新招聘 编辑:程序博客网 时间:2024/06/02 05:31

 

DataList控件的使用方法

主要用于查看数据信息

首先向网页中拖入一个DataList控件

为其配置数据源,在select中为要显示出的选项打上钩。

DataList自动生成<ItemTemplate>模板,里面会加入你在select中打钩的选项

格式如<%# DataBinder.Eval(Container.DataItem,"ZZ") %>

另外还可以添加<SelectedItemTemplate>模板

可以在<ItemTemplate>中定义一个LinkButton  令属性CommandName=select 点击这个LinkButton就可以显示出<SelectedItemTemplate>

这个的意思就是说可以只在<ItemTemplate>中显示名字或者编号,然后在<SelectedItemTemplate>显示详细的信息!当然也可以在<SelectedItemTemplate>模板中添加一个LinkButton令属性CommandName= <ItemTemplate>中那个LinkButtonID

下面用例子说明

<asp:DataList ID="DataList2" runat="server" DataKeyField="ID"

            DataSourceID="SqlDataSource2" RepeatColumns="3"

            onitemcommand="DataList2_ItemCommand"

            onselectedindexchanged="DataList2_SelectedIndexChanged">

      <ItemTemplate>

          ID:

          <asp:Label ID="IDLabel" runat="server" Text='<%# Eval("ID") %>' />

          <br />

     

          <asp:LinkButton ID="LinkButton1" runat="server" CommandName="select">详细资料</asp:LinkButton>

          <br />

          <br />

      </ItemTemplate>

      <SelectedItemTemplate> 作者:<%# DataBinder.Eval(Container.DataItem,"ZZ") %><asp:LinkButton

          ID="LinkButton2" runat="server" CommandName="LinkButton1">返回</asp:LinkButton>

      <br />

      发表时间:<%# DataBinder.Eval(Container.DataItem,"SJ") %><br />

      具体内容:<%#  DataBinder.Eval(Container.DataItem,"NR") %>

     

      </SelectedItemTemplate>

</asp:DataList>

这是前台的代码,关于数据源的配置未列出。

后台触发事件的代码如下:

  protected void DataList2_SelectedIndexChanged(object sender, EventArgs e)

    {

        DataList2.DataBind(); //<ItemTemplate>中当选择的对象变化时,重新进行数据绑定.

    }

 

    protected void DataList2_ItemCommand(object source, DataListCommandEventArgs e)

    {

        if (e.CommandName == "LinkButton1")

        {

 

            DataList2.SelectedIndex = -1;      //<SelectedItemTemplate>中 点击返回按钮 回到<ItemTemplate>

            DataList2.DataBind();

        }

    }

ListView控件的使用方法类似与DataList控件,只是多了插入,编辑,删除的功能,为管理员提供了方便。

首先拖入控件,然后为其配置数据源,

在配置select的选项是选择 制定自定义的SQL语句或存储过程.

然后分别为select,update,delete填写相应的语句。

此时就能在页面中进行查看数据,操作数据。

如:

<asp:ListView ID="ListView1" runat="server" DataKeyNames="ID"

            DataSourceID="SqlDataSource3" InsertItemPosition="LastItem">

            <ItemTemplate>

                <tr style="background-color: #E0FFFF; color: #333333;">

                    <td>

                        <asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" />

                        <asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />

                    </td>

                    <td>

                        <asp:Label ID="IDLabel" runat="server" Text='<%# Eval("ID") %>' />

                    </td>

                    <td>

                        <asp:Label ID="ZZLabel" runat="server" Text='<%# Eval("ZZ") %>' />

                    </td>

                    <td>

                        <asp:Label ID="SJLabel" runat="server" Text='<%# Eval("SJ") %>' />

                    </td>

                    <td>

                        <asp:Label ID="NRLabel" runat="server" Text='<%# Eval("NR") %>' />

                    </td>

                </tr>

            </ItemTemplate>

            <AlternatingItemTemplate>

                <tr style="background-color: #FFFFFF; color: #284775;">

                    <td>

                        <asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" />

                        <asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />

                    </td>

                    <td>

                        <asp:Label ID="IDLabel" runat="server" Text='<%# Eval("ID") %>' />

                    </td>

                    <td>

                        <asp:Label ID="ZZLabel" runat="server" Text='<%# Eval("ZZ") %>' />

                    </td>

                    <td>

                        <asp:Label ID="SJLabel" runat="server" Text='<%# Eval("SJ") %>' />

                    </td>

                    <td>

                        <asp:Label ID="NRLabel" runat="server" Text='<%# Eval("NR") %>' />

                    </td>

                </tr>

            </AlternatingItemTemplate>

            <EmptyDataTemplate>

                <table runat="server"

                    style="background-color: #FFFFFF;border-collapse: collapse;border-color: #999999;border-style:none;border-width:1px;">

                    <tr>

                        <td>

                            未返回数据。</td>

                    </tr>

                </table>

            </EmptyDataTemplate>

            <InsertItemTemplate>

                <tr style="">

                    <td>

                        <asp:Button ID="InsertButton" runat="server" CommandName="Insert" Text="插入" />

                        <asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="清除" />

                    </td>

                    <td>

                        <asp:TextBox ID="IDTextBox" runat="server" Text='<%# Bind("ID") %>' />

                    </td>

                    <td>

                        <asp:TextBox ID="ZZTextBox" runat="server" Text='<%# Bind("ZZ") %>' />

                    </td>

                    <td>

                        <asp:TextBox ID="SJTextBox" runat="server" Text='<%# Bind("SJ") %>' />

                    </td>

                    <td>

                        <asp:TextBox ID="NRTextBox" runat="server" Text='<%# Bind("NR") %>' />

                    </td>

                </tr>

            </InsertItemTemplate>

            <LayoutTemplate>

                <table runat="server">

                    <tr runat="server">

                        <td runat="server">

                            <table ID="itemPlaceholderContainer" runat="server" border="1"

                                style="background-color: #FFFFFF;border-collapse: collapse;border-color: #999999;border-style:none;border-width:1px;font-family: Verdana, Arial, Helvetica, sans-serif;">

                                <tr runat="server" style="background-color: #E0FFFF; color: #333333;">

                                    <th runat="server">

                                    </th>

                                    <th runat="server">

                                        ID</th>

                                    <th runat="server">

                                        ZZ</th>

                                    <th runat="server">

                                        SJ</th>

                                    <th runat="server">

                                        NR</th>

                                </tr>

                                <tr ID="itemPlaceholder" runat="server">

                                </tr>

                            </table>

                        </td>

                    </tr>

                    <tr runat="server">

                        <td runat="server"

                           

                            style="text-align: center;background-color: #5D7B9D; font-family: Verdana, Arial, Helvetica, sans-serif;color: #FFFFFF;">

                            <asp:DataPager ID="DataPager1" runat="server">

                                <Fields>

                                    <asp:NextPreviousPagerField ButtonType="Button" ShowFirstPageButton="True"

                                        ShowLastPageButton="True" />

                                </Fields>

                            </asp:DataPager>

                        </td>

                    </tr>

                </table>

            </LayoutTemplate>

            <EditItemTemplate>

                <tr style="background-color: #999999;">

                    <td>

                        <asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="更新" />

                        <asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="取消" />

                    </td>

                    <td>

                        <asp:Label ID="IDLabel1" runat="server" Text='<%# Eval("ID") %>' />

                    </td>

                    <td>

                        <asp:TextBox ID="ZZTextBox" runat="server" Text='<%# Bind("ZZ") %>' />

                    </td>

                    <td>

                        <asp:TextBox ID="SJTextBox" runat="server" Text='<%# Bind("SJ") %>' />

                    </td>

                    <td>

                        <asp:TextBox ID="NRTextBox" runat="server" Text='<%# Bind("NR") %>' />

                    </td>

                </tr>

            </EditItemTemplate>

            <SelectedItemTemplate>

                <tr style="background-color: #E2DED6; font-weight: bold;color: #333333;">

                    <td>

                        <asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="删除" />

                        <asp:Button ID="EditButton" runat="server" CommandName="Edit" Text="编辑" />

                    </td>

                    <td>

                        <asp:Label ID="IDLabel" runat="server" Text='<%# Eval("ID") %>' />

                    </td>

                    <td>

                        <asp:Label ID="ZZLabel" runat="server" Text='<%# Eval("ZZ") %>' />

                    </td>

                    <td>

                        <asp:Label ID="SJLabel" runat="server" Text='<%# Eval("SJ") %>' />

                    </td>

                    <td>

                        <asp:Label ID="NRLabel" runat="server" Text='<%# Eval("NR") %>' />

                    </td>

                </tr>

            </SelectedItemTemplate>

       

        </asp:ListView>

下为数据源的代码:

<asp:SqlDataSource ID="SqlDataSource2" runat="server"

            ConnectionString="<%$ ConnectionStrings:sk0621ConnectionString4 %>"

            DeleteCommand="delete from Lyb where id=@id"

            InsertCommand="insert into Lyb values(@id,@zz,@sj,@nr)"

            SelectCommand="select * from Lyb"

            UpdateCommand="update Lyb set zz=@zz,sj=@sj,nr=@nr where id=@id">

            <DeleteParameters>

                <asp:Parameter Name="id" />

            </DeleteParameters>

            <UpdateParameters>

                <asp:Parameter Name="zz" />

                <asp:Parameter Name="sj" />

                <asp:Parameter Name="nr" />

            </UpdateParameters>

            <InsertParameters>

                <asp:Parameter Name="id" />

                <asp:Parameter Name="zz" />

                <asp:Parameter Name="sj" />

                <asp:Parameter Name="nr" />

            </InsertParameters>

        </asp:SqlDataSource>

 

原创粉丝点击