첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
본 블로그는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 블로그 콘텐츠 향상을 위해 쓰여집니다.

728x90
반응형
728x170

TestProject.zip
다운로드

▶ DataModel.cs

using System;
using System.Collections.Generic;

namespace TestProject.Models
{
    /// <summary>
    /// 자료 모델
    /// </summary>
    public class DataModel
    {
        //////////////////////////////////////////////////////////////////////////////////////////////////// Property
        ////////////////////////////////////////////////////////////////////////////////////////// Public

        #region ID - ID

        /// <summary>
        /// ID
        /// </summary>
        public string ID { get; set; }

        #endregion
        #region 제목 - Subject

        /// <summary>
        /// 제목
        /// </summary>
        public string Subject { get; set; }

        #endregion
        #region 작성일 - WriteDate

        /// <summary>
        /// 작성일
        /// </summary>
        public DateTime WriteDate { get; set; }

        #endregion
        #region 분류 - Category

        /// <summary>
        /// 분류
        /// </summary>
        public string Category { get; set; }

        #endregion

        //////////////////////////////////////////////////////////////////////////////////////////////////// Method
        ////////////////////////////////////////////////////////////////////////////////////////// Static
        //////////////////////////////////////////////////////////////////////////////// Public

        #region 자료 리스트 구하기 - GetDataList(count)

        /// <summary>
        /// 자료 리스트 구하기
        /// </summary>
        /// <param name="count">카운트</param>
        /// <returns>자료 리스트</returns>
        public static List<DataModel> GetDataList(int count)
        {
            List<DataModel> list = new List<DataModel>();

            for(int i = 0; i < count; i++)
            {
                DataModel data = new DataModel();

                data.ID        = Guid.NewGuid().ToString().ToUpper();
                data.Subject   = $"제목 {i + 1:d3}";
                data.WriteDate = DateTime.Now.Date.AddDays(i);
                data.Category  = $"분류 {i + 1:d3}";

                list.Add(data);
            }

            return list;
        }

        #endregion
    }
}

 

728x90

 

▶ MainPage.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MainPage.aspx.cs" Inherits="TestProject.MainPage" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>GridView 클래스 사용하기</title>
    </head>
    <body>
        <form id="form" runat="server">
            <div>
                <asp:GridView ID="gridView" runat="server"
                    AutoGenerateColumns="false">
                    <Columns>
                        <asp:BoundField    HeaderText="ID"     DataField="ID"      />
                        <asp:BoundField    HeaderText="제목"   DataField="Subject" />
                        <asp:TemplateField HeaderText="작성일">
                            <ItemTemplate>
                                <%# Eval("WriteDate") %>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:BoundField    HeaderText="분류"   DataField="Category" />
                        <asp:HyperLinkField HeaderText="[수정]" 
                            DataTextField="ID"
                            DataTextFormatString="[수정]"
                            DataNavigateUrlFormatString="UpdatePage.aspx?ID={0}"
                            DataNavigateUrlFields="ID" />
                        <asp:HyperLinkField HeaderText="[삭제]" 
                            DataTextField="ID"
                            DataTextFormatString="[삭제]"
                            DataNavigateUrlFormatString="DeletePage.aspx?ID={0}"
                            DataNavigateUrlFields="ID" />
                    </Columns>
                </asp:GridView>
            </div>
        </form>
    </body>
</html>

 

300x250

 

▶ MainPage.aspx.cs

using System;
using System.Web.UI;

using TestProject.Models;

namespace TestProject
{
    /// <summary>
    /// 메인 페이지
    /// </summary>
    public partial class MainPage : Page
    {
        //////////////////////////////////////////////////////////////////////////////////////////////////// Method
        ////////////////////////////////////////////////////////////////////////////////////////// Protected

        #region 페이지 로드시 처리하기 - Page_Load(sender, e)

        /// <summary>
        /// 페이지 로드시 처리하기
        /// </summary>
        /// <param name="sender">이벤트 발생자</param>
        /// <param name="e">이벤트 인자</param>
        protected void Page_Load(object sender, EventArgs e)
        {
            if(!IsPostBack)
            {
                this.gridView.DataSource = DataModel.GetDataList(10);

                this.gridView.DataBind();
            }
        }

        #endregion
    }
}
728x90
반응형
그리드형
Posted by 사용자 icodebroker

댓글을 달아 주세요