<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        ASP.NET筆記之 ListView 與 DropDownList的使用

        來源:懂視網 責編:小采 時間:2020-11-27 22:41:17
        文檔

        ASP.NET筆記之 ListView 與 DropDownList的使用

        ASP.NET筆記之 ListView 與 DropDownList的使用:1、Repeater用來顯示數據、ListView用來操作數據 InsertItemTemplate和updateItemTemplate**Eval(顯示數據)和Bind(雙向綁定:不僅是需要展現,更需要把數據綁定到數據庫中) ItemPlaceholderID:占位符,決定占位,把頭部(之上)和尾部(之
        推薦度:
        導讀ASP.NET筆記之 ListView 與 DropDownList的使用:1、Repeater用來顯示數據、ListView用來操作數據 InsertItemTemplate和updateItemTemplate**Eval(顯示數據)和Bind(雙向綁定:不僅是需要展現,更需要把數據綁定到數據庫中) ItemPlaceholderID:占位符,決定占位,把頭部(之上)和尾部(之

        1、Repeater用來顯示數據、ListView用來操作數據

        InsertItemTemplate和updateItemTemplate
        **Eval(顯示數據)和Bind(雙向綁定:不僅是需要展現,更需要把數據綁定到數據庫中)

        ItemPlaceholderID:占位符,決定占位,把頭部(之上)和尾部(之下)分隔開
        ItemTemplate:展示功能

        自動生成的ListView需要調整的地方
        (1、生成的樣式要提到style中,不要用內聯的方式
        (2、ItemTemplate里面一半沒必要用<asp:Label>展示只讀數據,所以可以直接輸出
        <%#Eval("id")%>
        (3、LayoutTemplate中必須有一個ItempPlaceholderID 的服務端控件
        (4、LayoutTemplate中表頭的位置要漢化,所有template中的不需顯示的字段需刪除或更改位置

        2、事件
        流程同Repeater:

        //首先判斷數據行的類型
        e.Item.ItemType==ListViewItemType.DataItem

        //把e.Item轉化成ListViewDataItem才能拿到DataItem
        ListViewDataItem lvDataItem=(ListViewDataItem)e.Item;
        DataRowView rowView=(DataRowView)lvDataItem.DataItem;
        //獲得某一列
        var xRow=(...DAL.DataSet1.T_UserRow)rowVIew.Row;
        //獲得某一列的值
        xRow.Age、xRow.sName...etc.

        3、具體注意
        (1、設定相應的按鈕、控件、Validator為童顏的ValidationGroup,
        防止不同模板中的Validator互相干擾,
        (2、將Cancel按鈕中的CausesValidation="false"使得插入修改數據時
        可以取消操作,這樣即使在同一個分組內也可以不互相影響

        4、給InsertItemplate增加默認值
        //在ItemCreate屬性中進入函數
        if(e.Item.ItemType==ListViewItemType.InsertItem){
        TextBox AgeText=(TextBox)e.Item.FindControl("AgeID");
        AgeText.Text="20";
        }

        5、主鍵Guid:插入到數據庫

        (1、ListView的ItemInserting屬性:
        //要插入到數據庫之前的數據的鍵值對
        e.values["id"]=Guid.NewGuid();

        (2、ListView的ItemUpdateing屬性:
        e.ItemIdex
        e.OldValues//更新前的值
        e.NewValues["Age"]//更新后的值
        e.Cancel=true;//取消非法數據插入

        ObjectDataSource
        綁定id為guid 類型的時候

         6、DropDrownList


        (1、
        //包含在DropDrownList中的項
        <asp:ListItem value="man">男</asp:ListItem>

        (2、
        **后臺代碼:更新的時候
        //找到ListView
        //ListView1.Item[e.ItemIndex].FindControl("ID");
        //它是一個DropViewList
        DropDrownList d=(DropDrownList)listView1.Item[e.ItemIndex].FindControl("ID");
        //賦值
        e.NewValues=["字段"]=d.SelectedValue;

        (3、
        **后臺代碼:實現編輯時顯示原先的數據
        //有數據行
        if(e.Item.ItemType==ListVIewDataList.DataItem){
        //取控件
        DropDownList d=(DropDownLIst)e.Item.FindControl("ID");

        if(d!=null){
        //取到這一行綁定的數據
        ListViewDataItem lv=(ListViewDataItem)e.Item;
        DataRowItem row=(dataRowItem)lv.DataItem;
        //如果這一行有數據
        if(row!=null){
        //讀取數據庫該Row的值
        var myRow=(項目名稱.DAL.DataSetUsers.T_Users)row.Row;

        //將讀取打偶的Row值設置為下拉菜單中的選項
        d.SelectedValue=myRow.字段;
        }
        }
        }

        (4、 可以看不可以用 Enabled="false

         

        友情鏈接管理:

        效果:

        存在問題總結:

        (1、警告 1 元素“ListView”不是已知元素。原因可能是網站中存在編譯錯誤,或者缺少 web.config 文件。 E:\code\Projects\WebSite_zzl01\友情鏈接\LinkUrl_Admin.aspx 39 10 友情鏈接

        (2、onLinkTypeChange(this,'" + logoID.ClientID + "') 中傳給前臺javascript的ID不是客戶端的ID,會導致顯示和隱藏的功能無法實現,所以增加一個myID

        :   logoID.Attributes["myid"] = logoID.ClientID; 來傳遞參數

        LinkUrl_Admin.aspx.cs
        代碼如下:
        using System;
         using System.Collections.Generic;
         using System.Linq;
         using System.Web;
         using System.Web.UI;
         using System.Web.UI.WebControls;
         using System.Data;

         namespace 友情鏈接
         {
             public partial class LinkUrl_Admin : System.Web.UI.Page
             {
                 protected void Page_Load(object sender, EventArgs e)
                 {

                 }

                 protected void ListView1_ItemDataBound(object sender, ListViewItemEventArgs e)
                 {
                     //ListView1的屬性ItemDataBound數據綁定每一行
                     //顯示數據
                     if (e.Item.ItemType == ListViewItemType.DataItem) {
                         DropDownList ddlsLinkType = (DropDownList)e.Item.FindControl("ddlsLinkType");
                         ListViewDataItem dataitem = (ListViewDataItem)e.Item;
                         DataRowView myrow = (DataRowView)dataitem.DataItem;

                         if (ddlsLinkType != null && myrow != null) {
                             var sUrl = (友情鏈接.ADL.DataSet1.T_LinksRow)myrow.Row;
                             ddlsLinkType.SelectedValue = sUrl.sLinkType;
                         }
                     }

                 }

                 protected void ListView1_ItemInserting(object sender, ListViewInsertEventArgs e)
                 {
                     //插入數據
                     DropDownList ddlsLinkType = (DropDownList)e.Item.FindControl("ddlsLinkType");
                     e.Values["sLinkType"] = ddlsLinkType.SelectedValue;   
                 }

                 protected void ListView1_ItemUpdating(object sender, ListViewUpdateEventArgs e)
                 {
                     //更新數據
                     DropDownList ddlsLinkType = (DropDownList)ListView1.Items[e.ItemIndex].FindControl("ddlsLinkType");
                     e.NewValues["sLinkType"] = ddlsLinkType.SelectedValue;
                 }

                 protected void ListView1_ItemCreated(object sender, ListViewItemEventArgs e)
                 {
                     if (e.Item.ItemType == ListViewItemType.DataItem || e.Item.ItemType ==
                         ListViewItemType.InsertItem) {
                        DropDownList ddlsLinkType = (DropDownList)e.Item.FindControl("ddlsLinkType");
                        TextBox logoID = (TextBox)e.Item.FindControl("LogoUrlTextBox");
                         if (ddlsLinkType != null&&logoID!=null) {
                             //onchange是html中select的屬性
                             //onLinkTypeChange是后臺代碼調用前臺javascript中自定義的jQuery函數

                             logoID.Attributes["myid"] = logoID.ClientID;

                             ddlsLinkType.Attributes["onchange"] = "onLinkTypeChange(this,'" + logoID.ClientID + "')";
                             if(ddlsLinkType.SelectedValue=="Text"){
                                 logoID.Style["display"] = "none";
                             }
                         }
                     }
                 }
             }
         }

        LinkUrl_Admin.aspx
        代碼如下:
        <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LinkUrl_Admin.aspx.cs" Inherits="友情鏈接.LinkUrl_Admin" %>

         <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

         <html xmlns="http://www.w3.org/1999/xhtml">
         <head runat="server">
             <title>友情鏈接管理頁面</title>
             <script src="Scripts/jquery-1.4.2.js" type="text/javascript"></script>
             <script type="text/javascript">
                 function onLinkTypeChange(urlType, logoID) {
                     if ($(urlType).val() == "Text") {
                         $("input:text[myid=" + logoID + "]").hide();
                         //$("#" + logoID).hide(); //傳到到客戶端不是客戶端的id
                         //$("#ListView1_LogoURLTextBox").hide();//真正的id
                     }
                     else {
                         $("input:text[myid=" + logoID + "]").show();
                         //$("#" + logoID).show();
                     }
                 }
             </script>
         </head>
         <body>
             <form id="form1" runat="server">
             <div>

                 <asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
                     DeleteMethod="Delete" InsertMethod="Insert"
                     OldValuesParameterFormatString="original_{0}" SelectMethod="GetData"
                     TypeName="友情鏈接.ADL.DataSet1TableAdapters.T_LinksTableAdapter"
                     UpdateMethod="Update">
                     <DeleteParameters>
                         <asp:Parameter Name="Original_ID" Type="Int64" />
                     </DeleteParameters>
                     <InsertParameters>
                         <asp:Parameter Name="SeoNo" Type="Int32" />
                         <asp:Parameter Name="SiteName" Type="String" />
                         <asp:Parameter Name="sLinkType" Type="String" />
                         <asp:Parameter Name="SiteUrl" Type="String" />
                         <asp:Parameter Name="LogoUrl" Type="String" />
                     </InsertParameters>
                     <UpdateParameters>
                         <asp:Parameter Name="SeoNo" Type="Int32" />
                         <asp:Parameter Name="SiteName" Type="String" />
                         <asp:Parameter Name="sLinkType" Type="String" />
                         <asp:Parameter Name="SiteUrl" Type="String" />
                         <asp:Parameter Name="LogoUrl" Type="String" />
                         <asp:Parameter Name="Original_ID" Type="Int64" />
                     </UpdateParameters>
                 </asp:ObjectDataSource>

             </div>
             <asp:ListView ID="ListView1" runat="server" DataKeyNames="ID"
                 DataSourceID="ObjectDataSource1" InsertItemPosition="LastItem"
                 onitemdatabound="ListView1_ItemDataBound"
                 oniteminserting="ListView1_ItemInserting"
                 onitemupdating="ListView1_ItemUpdating"
                 onitemcreated="ListView1_ItemCreated">

                 <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:TextBox ID="SeoNoTextBox" runat="server" Text='<%# Bind("SeoNo") %>' />
                         </td>
                         <td>
                             <asp:TextBox ID="SiteNameTextBox" runat="server"
                                 Text='<%# Bind("SiteName") %>' />
                         </td>
                         <td>
                            <asp:DropDownList ID="ddlsLinkType" runat="server">
                              <asp:ListItem Value="Text">文本</asp:ListItem>
                              <asp:ListItem Value="Pic">圖片</asp:ListItem>
                            </asp:DropDownList>
                         </td>
                         <td>
                             <asp:TextBox ID="SiteUrlTextBox" runat="server" Text='<%# Bind("SiteUrl") %>' />
                         </td>
                         <td>
                             <asp:TextBox ID="LogoUrlTextBox" runat="server" Text='<%# Bind("LogoUrl") %>' />
                         </td>
                     </tr>
                 </EditItemTemplate>
                 <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="插入" ValidationGroup="Insert" />
                             <asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="清除" />
                         </td>
                         <td>
                             <asp:TextBox ID="SeoNoTextBox" ValidationGroup="Insert" runat="server" Text='<%# Bind("SeoNo") %>' />
                             <asp:RequiredFieldValidator ValidationGroup="Insert" ID="RequiredFieldValidator1" runat="server" ErrorMessage="*" ControlToValidate="SeoNoTextBox">
                             </asp:RequiredFieldValidator>
                             <asp:CompareValidator ValidationGroup="Insert" ID="CompareValidator1" runat="server" ErrorMessage="序號必須為整數" ControlToValidate="SeoNoTextBox" Operator="DataTypeCheck" Type="Integer">
                             </asp:CompareValidator>
                         </td>
                         <td>
                             <asp:TextBox ID="SiteNameTextBox" ValidationGroup="Insert" runat="server" MaxLength="50"
                                 Text='<%# Bind("SiteName") %>' />
                             <asp:RequiredFieldValidator ValidationGroup="Insert" ID="RequiredFieldValidator2" runat="server" ErrorMessage="*" ControlToValidate="SiteNameTextBox">
                             </asp:RequiredFieldValidator>
                         </td>
                         <td>
                            <asp:DropDownList ID="ddlsLinkType" ValidationGroup="Insert" runat="server" >
                              <asp:ListItem Value="Text">文本</asp:ListItem>
                              <asp:ListItem Value="Pic">圖片</asp:ListItem>
                            </asp:DropDownList>
                         </td>
                         <td>
                             <asp:TextBox ID="SiteUrlTextBox" ValidationGroup="Insert" runat="server" Text='<%# Bind("SiteUrl") %>' />
                             <asp:RequiredFieldValidator ValidationGroup="Insert" ID="RequiredFieldValidator3" runat="server" ErrorMessage="*" ControlToValidate="SiteUrlTextBox">
                             </asp:RequiredFieldValidator>
                         </td>
                         <td>
                             <asp:TextBox ID="LogoUrlTextBox" ValidationGroup="Insert" runat="server" Text='<%# Bind("LogoUrl") %>' />
                         </td>
                     </tr>
                 </InsertItemTemplate>
                 <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="SeoNoLabel" runat="server" Text='<%# Eval("SeoNo") %>' />
                         </td>
                         <td>
                             <asp:Label ID="SiteNameLabel" runat="server" Text='<%# Eval("SiteName") %>' />
                         </td>
                         <td>
                            <asp:DropDownList ID="ddlsLinkType" runat="server" Enabled="false">
                              <asp:ListItem Value="Text">文本</asp:ListItem>
                              <asp:ListItem Value="Pic">圖片</asp:ListItem>
                            </asp:DropDownList>
                         </td>
                         <td>
                             <asp:Label ID="SiteUrlLabel" runat="server" Text='<%# Eval("SiteUrl") %>' />
                         </td>
                         <td>
                             <asp:Label ID="LogoUrlLabel" runat="server" Text='<%# Eval("LogoUrl") %>' />
                         </td>
                     </tr>
                 </ItemTemplate>
                 <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">
                                             序號</th>
                                         <th runat="server">
                                             網站名稱</th>
                                         <th runat="server">
                                             鏈接類型</th>
                                         <th runat="server">
                                             網站網址</th>
                                         <th runat="server">
                                             logo網址</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>
             </asp:ListView>
             </form>
         </body>
         </html>

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        ASP.NET筆記之 ListView 與 DropDownList的使用

        ASP.NET筆記之 ListView 與 DropDownList的使用:1、Repeater用來顯示數據、ListView用來操作數據 InsertItemTemplate和updateItemTemplate**Eval(顯示數據)和Bind(雙向綁定:不僅是需要展現,更需要把數據綁定到數據庫中) ItemPlaceholderID:占位符,決定占位,把頭部(之上)和尾部(之
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲免费福利视频| 亚洲一级大黄大色毛片| 亚洲精品~无码抽插| 亚洲av无码专区在线播放| 亚洲精品国产成人| 亚洲av成人片在线观看| 午夜在线免费视频 | 久久精品九九亚洲精品| 亚洲精品第一国产综合亚AV| 99精品视频在线观看免费| 中文字幕免费在线| 日韩电影免费在线| 亚洲AV无码久久精品蜜桃| 无码精品一区二区三区免费视频| 国产精品另类激情久久久免费| 亚洲视频一区二区在线观看| WWW国产成人免费观看视频| 黄页网站在线观看免费高清| 亚洲精品高清无码视频| 久久午夜夜伦鲁鲁片免费无码| 亚洲日韩在线第一页| 亚洲欧美日韩中文字幕一区二区三区 | 国产免费久久精品丫丫| 免费观看的av毛片的网站| 中文字幕亚洲专区| 亚洲AV成人精品一区二区三区| 亚洲AⅤ优女AV综合久久久| 亚洲人成网站18禁止| 亚洲第一黄色网址| 黄网站色成年片大免费高清 | 三年片在线观看免费大全 | 精品一区二区三区免费观看| 亚洲丁香色婷婷综合欲色啪| 国产又黄又爽又大的免费视频| 午夜亚洲国产成人不卡在线| 四虎影视无码永久免费| 亚洲成年网站在线观看| 久久久高清免费视频| 精品久久久久久亚洲中文字幕| 色www永久免费视频| a级片免费观看视频|