제목 : [6][1] RedPlusMemo.ascx.cs
글번호:
|
|
306
|
작성자:
|
|
레드플러스
|
작성일:
|
|
2008/07/16 오전 11:04:00
|
조회수:
|
|
4815
|
using System;
using System.Web.UI;
using RedPlus.Modules.Memo;
public partial class Memo_RedPlusMemoControl : System.Web.UI.UserControl
{
//[1] 페이징 번호 임시 저장용 필드
private int intPage = 0;
protected void Page_Load(object sender, EventArgs e)
{
//[5] 참고 : Default.aspx?Page={0} 식으로 넘어 온다면...
if (!String.IsNullOrEmpty(Request["Page"]))
{
intPage = Convert.ToInt32(Request["Page"]) - 1;//n-1규칙
}
//[4] PagingHelper 컨트롤에 전체 레코드 수 지정
if (!btnClose.Visible)
{
PagingHelper1.VirtualItemCount = MemoController.GetTotalMemo();
}
//[!] PagingHelper 컨트롤에 검색 결과 레코드 수 지정
else
{
PagingHelper1.VirtualItemCount =
MemoController.GetTotalFindMemo(
lstSearchField.SelectedValue, txtSearchQuery.Text);
}
if (!Page.IsPostBack)
{
DisplayData();
}
}
private void DisplayData()
{
if (!btnClose.Visible) // 검색종료 버튼이 보이지 않으면 일반 리스트
{
//[3] 페이징 값 매개변수로 전달
ctlMemoList.DataSource = MemoController.GetMemos(intPage);
ctlMemoList.DataBind();
}
else // 검색종료 버튼이 보이면 검색 리스트
{
ctlMemoList.DataSource =
MemoController.GetFindMemos(
intPage
, lstSearchField.SelectedValue
, txtSearchQuery.Text);
ctlMemoList.DataBind();
}
}
protected void PagingHelper1_OnPageIndexChanged(object sender, TaeyoNetLib.PagingEventArgs e)
{
//[2] 현재 보여줄 페이지 값 지정
intPage = e.PageIndex;
DisplayData();
}
protected void btnSearch_Click(object sender, EventArgs e)
{
this.btnClose.Visible = true;
//[4] PagingHelper 컨트롤에 전체 레코드 수 지정
//[!] PagingHelper 컨트롤에 검색 결과 레코드 수 지정
PagingHelper1.VirtualItemCount =
MemoController.GetTotalFindMemo(
lstSearchField.SelectedValue, txtSearchQuery.Text);
this.ctlMemoList.DataSource = MemoController.GetFindMemos(intPage, lstSearchField.SelectedValue, txtSearchQuery.Text);
this.ctlMemoList.DataBind();
}
protected void btnWrite_Click(object sender, EventArgs e)
{
// MemoInfo 클래스의 인스턴스 생성
MemoInfo mi = new MemoInfo();
mi.Name = txtName.Text;
mi.Email = txtEmail.Text;
mi.Title = txtTitle.Text;
mi.PostIP = Request.UserHostAddress;
// MemoController 클래스의 메서드 호출
MemoController.AddMemo(mi);
// 이동
Response.Redirect(Request.ServerVariables["SCRIPT_NAME"]);
}
protected void btnClose_Click(object sender, EventArgs e)
{
// 이동
Response.Redirect(Request.ServerVariables["SCRIPT_NAME"]);
}
}