国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答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―001:GridView綁定List、頁面返回值具體實現

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

ASP.NET―001:GridView綁定List、頁面返回值具體實現

ASP.NET―001:GridView綁定List、頁面返回值具體實現:用慣了WPF的綁定,ASP.NET的綁定貌似不是很好用。下面看看ASP.NET綁定的用法。一般來說可以直接綁定DataTable的,不過我覺得綁定List比較符合面向對象編程。綁定的方法是兩句代碼: 代碼如下:GridView名.DataSource = List<自定義類>
推薦度:
導讀ASP.NET―001:GridView綁定List、頁面返回值具體實現:用慣了WPF的綁定,ASP.NET的綁定貌似不是很好用。下面看看ASP.NET綁定的用法。一般來說可以直接綁定DataTable的,不過我覺得綁定List比較符合面向對象編程。綁定的方法是兩句代碼: 代碼如下:GridView名.DataSource = List<自定義類>

用慣了WPF的綁定,ASP.NET的綁定貌似不是很好用。下面看看ASP.NET綁定的用法。一般來說可以直接綁定DataTable的,不過我覺得綁定List比較符合面向對象編程。
綁定的方法是兩句代碼:
代碼如下:
GridView名.DataSource = List<自定義類>; 

GridView名.DataBind(); 

直接看例子吧,以下是一個綁定一個PersonModel類的例子。其中用到了頁面返回參數,使用js傳遞,js可寫在前端也可直接寫在后臺代碼里。
項目結構:

效果:

實體類
代碼如下:
public class PersonModel
    {
        private int personIndex;


        public int PersonIndex
        {
            get { return personIndex; }


            set { personIndex = value; }
        }


        private string personID;


        public string PersonID
        {
            get { return personID; }


            set { personID = value; }
        }


        private string personName;


        public string PersonName
        {
            get { return personName; }


            set { personName = value; }
        }


        private string personSex;


        public string PersonSex
        {
            get { return personSex; }


            set { personSex = value; }
        }


        private int personAge;


        public int PersonAge
        {
            get { return personAge; }


            set { personAge = value; }
        }


        private bool personSelected = false;


        public bool PersonSelected
        {
            get { return personSelected; }


            set { personSelected = value; }
        }
    }

針對綁定的aspx頁面寫一個管理類,用于操作數據
代碼如下:
public class ChildFrmManager
    {
        private List<PersonModel> personCollect = new List<PersonModel>();


        private static ChildFrmManager instance = null;


        public List<PersonModel> PersonCollect
        {
            get { return personCollect; }


            set { personCollect = value; }
        }


        public static ChildFrmManager DoGetInstance()
        {
            if (instance == null)
            {
                instance = new ChildFrmManager();
            }


            return instance;
        }


        public void DoAddPersons()
        {
            for (int i = 0; i < 20; i++)
            {
                PersonModel model = new PersonModel();


                model.PersonIndex = i + 1;


                model.PersonID = System.Guid.NewGuid().ToString();


                model.PersonName = "測試" + i;


                model.PersonAge = 27 + i;


                model.PersonSex = i % 2 == 0 ? "男" : "女";


                model.PersonSelected = false;


                this.PersonCollect.Add(model);
            }
        }
    }

綁定的頁面前端
代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ChildFrm.aspx.cs" Inherits="ASPNetGridView.Pages.ChildFrm" %>


<!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>
</head>
<<body id="MyBody" runat="server" ms_positioning="GridLayout">
    <form id="Form1" runat="server" method="post">
    <div>
    <asp:GridView ID="dgPersons" runat="server" AutoGenerateColumns="False"
     EnableViewState="false"
    CellPadding="4"  ForeColor="#333333" DataKeyNames="PersonID"
     OnSelectedIndexChanged="Selcted_Click">
     <Columns>
       <asp:CommandField ShowSelectButton="True" /> 
       <asp:BoundField DataField="PersonIndex" HeaderText="序號"/>
       <asp:TemplateField>
       <ItemTemplate>
       <input id="radiobutton1" name="pselect" type="radio" />
       </ItemTemplate>
       </asp:TemplateField>
       <asp:BoundField DataField="PersonName" HeaderText="姓名" />
       <asp:BoundField DataField="PersonAge" HeaderText="年齡" />
       <asp:BoundField DataField="PersonSex" HeaderText="性別" />
     </Columns>
        <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
            <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
            <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
            <EditRowStyle BackColor="#999999" />
            <AlternatingRowStyle BackColor="White" ForeColor="#284775" />

    </asp:GridView>
    </div>
    </form>
</body>
</html>

綁定頁面后臺
代碼如下:
 public partial class ChildFrm : System.Web.UI.Page
    {
        private ChildFrmManager dManager = null;


        protected PersonModel selectItem = null;


        protected void Page_Load(object sender, EventArgs e)
        {
            dManager = ChildFrmManager.DoGetInstance();


            if (!IsPostBack)
            {
                dManager.DoAddPersons();


                this.dgPersons.DataSource = dManager.PersonCollect;


                this.dgPersons.DataBind();
            }
        }


        protected void Selcted_Click(object sender, EventArgs e)
        {
            int selectIndex = this.dgPersons.SelectedIndex;


            foreach (PersonModel mitem in dManager.PersonCollect)
            {
                if (mitem.PersonIndex - 1 == selectIndex)
                {
                    mitem.PersonSelected = true;
                }
                else
                {
                    mitem.PersonSelected = false;
                }
            }


            selectItem = dManager.PersonCollect[selectIndex];


            string vbCrLf = " ";


            string strScript = "<script>" + vbCrLf;


            strScript += "window.parent.returnValue='" + selectItem.PersonName + "';" + vbCrLf;


            strScript += "window.parent.close();" + vbCrLf;


            strScript += "</script>" + vbCrLf;


            if (!IsClientScriptBlockRegistered("clientScript"))
            {
                RegisterClientScriptBlock("clientScript", strScript);
            }
        }
    }

承載綁定頁面的頁面
代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FrameFrm.aspx.cs" Inherits="ASPNetGridView.Pages.FrameFrm" %>


<!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>
</head>
<frameset rows="0,*">
    <frame src="about:blank">
    <frame src="ChildFrm.aspx">
  </frameset>
</html>

主頁面,獲取返回值的js在前端
代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ASPNetGridView._Default" %>


<!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>
</head>
<body>
    <div align="center">
        <form id="Form1" runat="server" method="post">
            <table runat="server">
              <tr>
                  <td>
                  <asp:Label ID="Label1" runat="server" Font-Bold="true">選擇結果</asp:Label>
                  </td>


                  <td>
                  <asp:TextBox ID="txtShowReturnValue" runat="server" Width="100px" />
                  </td>
                  <td>
                  <asp:Button ID="btnOpenNewFrm" runat="server" Text="選擇" Width="60px" OnClientClick="OpenNewWindow()"/>
                  </td>
              </tr>
            </table>
        </form>
    </div>
</body>
<script type ='text/javascript'>
    function OpenNewWindow() {


        var str = window.showModalDialog('Pages/FrameFrm.aspx', document.Form1.txtShowReturnValue.value, 'dialogWidth=1000px;dialogHeight=900px', 'scroll:yes');


        if (str != null)
        { document.Form1.txtShowReturnValue.value = str; }
    }
</script>
</html>

代碼下載

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

文檔

ASP.NET―001:GridView綁定List、頁面返回值具體實現

ASP.NET―001:GridView綁定List、頁面返回值具體實現:用慣了WPF的綁定,ASP.NET的綁定貌似不是很好用。下面看看ASP.NET綁定的用法。一般來說可以直接綁定DataTable的,不過我覺得綁定List比較符合面向對象編程。綁定的方法是兩句代碼: 代碼如下:GridView名.DataSource = List<自定義類>
推薦度:
標簽: 綁定 頁面 asp
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 精品国产欧美一区二区三区成人 | 国产日韩久久久久69影院 | 欧美精品色精品一区二区三区 | 韩国一区二区三区 | 国产精品视频大全 | 亚洲国产精品一区二区三区 | 日韩在线视频网 | 国产毛片在线 | 国产成人久久综合二区 | 欧美亚洲综合另类在线观看 | 精品欧美一区二区三区在线 | 欧美日韩精品一区二区三区四区 | 成人黄色在线 | 久久久这里有精品999 | 国产亚洲一区二区三区不卡 | 国产精品视频观看 | 中文国产成人精品久久一区 | 久久一区二区三区四区 | 欧美 日韩 国产在线 | 欧美日韩大片 | 在线国产视频 | 日韩高清在线观看 | 亚洲精品乱码久久久久久中文字幕 | 激情一区二区三区 | 欧美精品第一页 | 91久久国产口精品久久久久 | 亚洲欧洲另类 | 亚洲一区影院 | 影音先锋在线视频 | 亚洲三级电影在线 | 免费亚洲网站 | 国内精品视频在线播放 | 久久久无码精品亚洲日韩按摩 | 亚洲视频在线观看免费 | 91视频国产91久久久 | 国产精品…在线观看 | 国产91原创 | 久久成人国产 | 欧美日韩另类在线 | 真人一级一级毛片免费观看 | 亚洲综合欧美 |