|
°Á Àü Å¿ÀÀÇ Àâ´ã>
¾Æ.. Àú´Â Å¿ÀÀÔ´Ï´Ù. ^^; ¼³¸¶ ±î¸ÔÀ¸½Å °ÍÀº ¾Æ´Ï°ÚÁÒ? ÇÏÇÏÇÏ
ÀÌ °Á´ ¿©·¯ºÐÀÌ ±âº»ÀûÀÎ ASP.NETÀÇ »ç¿ë¹ýÀ» ¾î´ÀÁ¤µµ °øºÎÇß´Ù´Â
°¡Á¤¿¡¼ Ãâ¹ßÇϵµ·Ï ÇÒ¶ø´Ï´Ù. ƯÈ÷³ª, Taeyo's ASP.NET v1.0 ¶ó´Â 2003³â 2¿ù¿¡ ¿µÁøÃâÆÇ»ç(+Àκ극ÀÎ
ÇÁ·¹½º)¿¡¼ ³ª¿Â
º£½ºÆ®¼¿·¯¸¦ ÅëÇØ¼ ASP.NET À» °øºÎÇÏ¼Ì´Ù¸é ´õ´õ¿í ÀÌ °Á°¡
µµ¿òÀÌ µÉ °Ì´Ï´Ù.
^^;
¾Æ~ ³×!! Àº±ÙÇÑ Ã¥ ±¤°í´Â À̸¸Å¸¸ Çϱ¸¿ä. °Á¸¦ ÁøÇàÇØ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. ^^;
À̹ø °Á´ ¿©·¯ºÐÀÌ È¤ Àº±Ù½½Â½ Áö³ªÃÆÀ»Áöµµ ¸ð¸£´Â À¥ Æû PageÀÇ PreRender ¶ó´Â À̺¥Æ®ÀÇ È¿°úÀûÀÎ
»ç¿ë¹æ¹ý¿¡ ´ëÇÑ À̾߱âÀÔ´Ï´Ù. ¿Ü±¹ WroxÀÇ ¼Àû¿¡¼´Â ÀÌ ºÎºÐÀÌ Performance(¼º´É)°ú °ü°èÇØ¼ ¹«°ÔÀÖ°Ô ´Ù·ç°í
Àֱ⵵ Çѵ¥¿ä. ÀÌ PreRender À̺¥Æ®¸¦ ÀûÀýÈ÷ »ç¿ëÇÑ´Ù¸é ¿©·¯ºÐÀº ÄÚµåÀÇ ¹Ýº¹À» »ó´çÈ÷ ÁÙÀÏ ¼ö ÀÖÀ» »Ó
¾Æ´Ï¶ó, ÀüüÀûÀÎ ÄÚµåÀÇ ±¸¼ºµµ ¸Å¿ì ±ò²ûÇÏ°Ô ÀâÀ¸½Ç ¼ö ÀÖÀ» °Ì´Ï´Ù.
µµ´ëü Page_PreRender À̺¥Æ®°¡ ¾î¶² Ưº°ÇÑ ±â´ÉÀ» Á¦°øÇϱ⿡ ÃʹݺÎÅÍ ±×·¸°Ô ¸¶±¸ °úÀåÀ» ½ñ¾Æº×´À³Ä ÇϽÇ
Áö ¸ð¸£°Ú³×¿ä. ^^; ÀÏ´Ü Çѹø µÎ°íº¼±î¿ä?
ÀÚ. ¸ÕÀú, º»°ÝÀûÀÎ À̾߱⸦ ½ÃÀÛÇϱâ Àü¿¡ ¿©·¯ºÐ°ú ÇÔ²², À¥
Æû(WebForm)ÀÇ ±âº»ÀûÀÎ À̺¥Æ® ó¸® ¼ø¼¸¦ Çѹø »ìÆìº¸µµ·Ï ÇϰڽÀ´Ï´Ù. Å©°Ô º¸¾ÒÀ» ¶§, À¥ Æû ÆäÀÌÁöÀÇ À̺¥Æ®´Â ´ÙÀ½°ú °°ÀÌ ºÐ·ùÇÒ ¼ö ÀÖ½À´Ï´Ù. (ÀÌ ³»¿ëÀº
Taeyo's ASP.NET Ã¥ÀÇ 185, 372 ÆäÀÌÁö¸¦ Âü°íÇÏ½Ã¸é¼ º¸¸é ´õ¿í ÁÁ½À´Ï´Ù -_-;;)
|
À̺¥Æ®
|
¼³¸í
|
| Page_Init
|
°¡Àå ¸ÕÀú ¹ß»ýÇÏ´Â À̺¥Æ®À̸ç, ÀÌ À̺¥Æ® µ¿¾È¿¡ ÄÁÆ®·ÑµéÀÇ °ªÀ» ÃʱâÈÇϰųª, À̺¥Æ®µéÀ» ¸ÅÇÎ(¿¬°á)ÇÒ ¼ö ÀÖ´Ù.
|
| Page_Load
|
ÆäÀÌÁö°¡ ½ÇÁúÀûÀ¸·Î ·ÎµåµÇ´Â ½ÃÁ¡¿¡ ¹ß»ýÇÏ´Â À̺¥Æ®ÀÌ´Ù. ÀÌ À̺¥Æ® µ¿¾È¿¡ ASP.NET ÆäÀÌÁö¸¦ ¸¸µé¸ç, À̺¥Æ®¿¡ ÀÀ´äÇÏ´Â ÀÛ¾÷µéÀ» ¼öÇàÇÒ ¼ö ÀÖ´Ù. ÀÌ À̺¥Æ®°¡ ¹ß»ýÇϱâ Àü¿¡ ViewState¸¦ »ç¿ëÇÏ¿© ¼¹ö ÄÁÆ®·ÑµéÀÇ »óŰ¡ º¹¿øµÈ´Ù. ¶ÇÇÑ, ÀÌ À̺¥Æ® µ¿¾È¿¡ IsPostBack ¼Ó¼ºÀ» »ç¿ëÇÏ¿© ÆäÀÌÁö°¡ óÀ½ ·ÎµåµÇ´Â °ÍÀÎÁö Æ÷½ºÆ®¹é ÁßÀÎÁö¸¦ ¾Ë¾Æ³¾ ¼ö ÀÖÀ¸¸ç ±×¿¡ µû¶ó ÀûÀýÇÑ ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖ´Ù. ÁÖ·Î, ÆäÀÌÁöÀÇ Ã¹ ·Îµå ½Ã¿¡ µ¥ÀÌÅÍ ¹ÙÀεù ÀÛ¾÷À» ¼öÇàÇÑ´Ù.
|
| Page_DataBind
|
ÀÌ´Â ÆäÀÌÁö¿¡¼ DataBind ¸Þ¼µå°¡ È£ÃâµÉ ¶§ ¹ß»ýÇÏ´Â À̺¥Æ®ÀÌ´Ù.
|
| Page_PreRender
|
ÀÌ À̺¥Æ®´Â ViewState »óŰ¡ ÀúÀåµÇ±â Àü, ÄÁÆ®·ÑÀÌ ·»´õ¸µµÇ±â ¹Ù·Î Á÷Àü¿¡ ¹ß»ýÇÏ´Â À̺¥Æ®ÀÌ´Ù. ÀÌ À̺¥Æ®¿¡ Äڵ带 ÀÛ¼ºÇÏ´Â °æ¿ì´Â µå¹® ÆíÀÌÁö¸¸, ÀÌ À̺¥Æ®¸¦ »ç¿ëÇÏ¿© ¸¶Áö¸· ¼¼ºÎ ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖ´Ù.
(ÀÌ ºÎºÐÀÌ Áß¿äÇÕ´Ï´Ù. ±âÁ¸ ¼ÀûÀº ÀÌ ºÎºÐ¿¡¼ ÀÛ¾÷ÇÏ´Â °ÍÀÌ µå¹°´Ù°í ³ª¿ÍÀÖÁö¸¸, ¹Ù·Î ÀÌ À̺¥Æ®¸¦ ÀûÀýÈ÷ »ç¿ëÇϸé
»ó´çÈ÷ Àß Á¤µ·µÈ ÆäÀÌÁöÀÇ ±¸¼ºÀÌ °¡´ÉÇÏ°Ô µÈ´ä´Ï´Ù)
|
| Page_Unload
|
ÆäÀÌÁö°¡ ·»´õ¸µÀ» ³¡¸¶Ä£ µÚ¿¡, ¸ðµç ÀÛ¾÷À» ¸¶¹«¸®ÇÒ ¶§ ¹ß»ýÇÏ´Â À̺¥Æ®ÀÌ´Ù. ÀÌ À̺¥Æ®´Â ÃÖÁ¾ Á¤¸® ÀÛ¾÷À» ¼öÇàÇϱ⿡ ÁÁÀº Àå¼ÒÀ̱⿡, µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ ¿¬°áÀ» ´Ý´Â ÀÛ¾÷À̳ª, °³Ã¼ÀÇ ÇØÁ¦, ¿·ÁÁ® ÀÖ´Â ÆÄÀÏÀÇ ´Ý±â µîÀÇ ÀÛ¾÷ÀÌ À̰÷¿¡¼ ¼öÇàµÈ´Ù. Áß¿äÇÑ °ÍÀº ÀÌ À̺¥Æ®¿¡¼´Â ȸ鿡 Ãâ·ÂÇÏ´Â ¾î¶°ÇÑ Äڵ嵵 µ¿ÀÛÇÏÁö ¾Ê´Â´Ù´Â °ÍÀÌ´Ù. ±×·¯ÇÑ ÀÛ¾÷Àº ÀÌ À̺¥Æ® ÀÌÀü¿¡ ¸ðµÎ ¼öÇàÇØ¾ß ÇÑ´Ù.
|
ÀÚ. À̰ÍÀÌ PageÀÇ À̺¥Æ®µéÀÌ µ¿ÀÛÇÏ´Â È帧À̶ø´Ï´Ù. ¸ÚÁöÁÒ?
ÀϹÝÀûÀÎ °æ¿ì´Â ÀÌ À̺¥Æ®µé Áß¿¡¼ Page_Load ¸¦ Á¦¿ÜÇϰí´Â ±×¸® »ç¿ëÇÒ
ÀÏÀÌ ¾ø´Ù´Â °Íµµ ÀÌ¹Ì ¿©·¯ºÐÀº ¾Æ½Ã°í °è½Ç °Ì´Ï´Ù. ¿©·¯ºÐÀº ÀϹÝÀûÀ¸·Î º¯¼ö Ãʱâȸ¦ ÀÌ À̺¥Æ® ³»¿¡¼ Çϰí
ÀÖÀ» °ÍÀ̸ç, DataGrid ·ÎÀÇ µ¥ÀÌÅÍ ¹ÙÀεùµµ ÁÖ·Î ÀÌ Àå¼Ò¿¡¼ ÇϽðí´Â ÇÒ °ÍÀÔ´Ï´Ù. ±×¸®°í, À¥ Æû ³»¿¡ Á¸ÀçÇÏ´Â
BUttonÀ̳ª TextBox µîÀÇ ÄÁÆ®·Ñ¿¡¼ ¹ß»ýÇÑ À̺¥Æ®µéÀº Page_Load À̺¥Æ®°¡ ÀÏ¾î³ ´ÙÀ½¿¡ ¹ß»ýÇÑ´Ù´Â ´ÙÀ½ »ç½Çµµ ¾Ë°í °è½Ç °Ì´Ï´Ù. ±×·¸ÁÒ?
ÇÏÁö¸¸, À§ÀÇ Ç¥´Â ´ÜÁö PageÀÇ ´ëÇ¥ÀûÀÎ À̺¥Æ®¸¸À» ¼Ò°³ÇÑ °Í¿¡
ºÒ°úÇÏÁö¿ä. ½ÇÁ¦·Î´Â À¥ ÆûÀÇ ÀüüÀûÀÎ À̺¥Æ® ó¸® ÇÁ·Î¼¼½º´Â ´ÙÀ½°ú °°Àº È帧À» °¡Áö°í ÀÖ´ä´Ï´Ù. ¹°·Ð, ¾Æ·¡ÀÇ ±×¸²¿¡¼ Ç¥ÇöÇÑ ¸ðµç
°ÍÀ» ±â¾ïÇϰí ÀÖÀ» ÇÊ¿ä´Â ¾øÁö¸¸, ³ªÁß¿¡ ¿©·¯ºÐÀÇ ³»°øÀÌ »ó½ÂÇÑ´Ù¸é ÀÌ ±×¸²Àº ¾Æ¸¶µµ »ó´çÈ÷ À¯¿ëÇÒ °ÍÀ̶ó »ý°¢ÇÕ´Ï´Ù.
ÇÏÁö¸¸, ÀÌ·¯ÇÑ À̺¥Æ® ±¸Á¶·Î ÀÎÇØ °¡²ûÀº ÄÚµå ÀÛ¼ºÀÇ ¼ø¼¶§¹®¿¡ °í¹ÎÀ» ÇϽŠÀûµµ
ÀÖÀ» °ÍÀ̶ó ÃßÃøÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, À¥ Æû ¼¹ö ÄÁÆ®·Ñµé(Button, TextBoxµî)ÀÇ °³º°ÀûÀÎ À̺¥Æ®µé(ex: Clicked,
TextChanged µî...)ÀÌ Page_Load À̺¥Æ® ÀÌÈÄ¿¡ ¹ß»ýÇÔÀ¸·Î½á ÄÚµù ½Ã¿¡ ¿©·¯°¡Áö¸¦ ¿¹»óÇϰí,
°í·ÁÇØ¾ß¸¸ ÇÏ´Â ÇǰïÇÑ Á¡µéÀÌ »ý±â°ï ÇÑ´Ù´Â °ÍÀÌÁÒ. ÀÌÇØ°¡ Àß ¾È°¡½Ã³ª¿ä? ±×·¸´Ù¸é, ¿¹Á¦¸¦ ÅëÇØ¼ Çѹø ±× ÇǰïÇÔÀ̶ó´Â °ÍÀÌ ¹«¾ùÀÎÁö È®ÀÎÇØ º¸µµ·Ï Çϰí, ±×°ÍÀ» ¾î¶² ½ÄÀ¸·Î °³¼±ÇØ ³ª°¥ ¼ö ÀÖ´ÂÁöµµ
Çѹø ¾Ë¾Æº¸µµ·Ï ÇØ¿ä
¸ÕÀú, ¿©·¯ºÐÀÌ ±âÁ¸¿¡ ÀÛ¾÷ÇÏ´ø VS.NET ÇÁ·ÎÁ§Æ®¿¡(¸¸ÀÏ, ±×·±°Å ¾ø´Ù¸é
»õ·ÎÀÌ ¸¸µå¼ÅµÎ µË´Ï´Ù) PreRenderEventTest.aspx ¶ó´Â À̸§ÀÇ ÆäÀÌÁö¸¦ Çϳª »õ·ÎÀÌ Ãß°¡ÇØ ÁÖ¼¼¿ä. »ç½Ç
ÆÄÀÏ À̸§ÀÌ¾ß ¿©·¯ºÐ ¸¾´ë·Î ÁּŵΠµË´Ï´Ù¸¸... ±×·¡µµ, ±â¿ÕÀÌ¸é °°ÀÌ ÇØº¸ÁÒ~~
PreRenderEventTest.aspx À¥ ÆûÀ» ¸¸µå¼Ì´Ù¸é, Æû À§¿¡
DataGrid ÄÁÆ®·ÑÀ» Çϳª ¿Ã¸®½Ã±¸¿ä. ±× ÄÁÆ®·Ñ¿¡ ¸¶¿ì½º ¿ìÃøÅ¬¸¯ ÇÑ ´ÙÀ½, [ÀÚµ¿ ¼½Ä]¿¡¼ ]´Ù¾ç 2]¸¦ ¼±ÅÃÇϵµ·Ï Çϼ¼¿ä
¹°·Ð, ÀÌ ½ºÅ¸ÀÏÀº ¿©·¯ºÐÀÌ ¿øÇÏ´Â °ÍÀ¸·Î ¼±ÅÃÇØµµ ¹«¹æÇϱä ÇÏÁö¸¸ ¸»ÀÔ´Ï´Ù. ^^;
¿©±â±îÁö µÇ¾ú´Ù¸é, ÇöÀç À¥ ÆûÀÇ [HTML] ¸ðµå·Î À̵¿Çϼż ¾à°£ÀÇ <style> ű׸¦ Ãß°¡ÇØ º¸µµ·Ï ÇØ¿ä. ¹°·Ð, ¹Ýµå½Ã ±×·¡¾ßÇÏ´Â °ÍÀº ¾Æ´ÏÁö¸¸
ÆäÀÌÁöÀÇ Ãâ·Â°á°ú°¡ Á¶±ÝÀº ±ò²ûÇÏ°Ô ³ª¿Ã ¼ö ÀÖµµ·Ï ¸»ÀÔ´Ï´Ù. ´ÙÀ½°ú °°Àº <style>Äڵ带 <head> ±¸¿ª¿¡ Ãß°¡ÇÏ½Ã¸é µÉ °ÍÀÔ´Ï´Ù.
<style>
grid { FONT-SIZE: 11px; FONT-FAMILY: verdana }
A { TEXT-DECORATION: none }
<style>
|
ÀÚ. ´Ù µÇ¾ú´Ù¸é ÀÌÁ¦ DaraGrid ÄÁÆ®·ÑÀÇ
AutoGenerateColumns ¼Ó¼ºÀÇ °ªÀ»
False·Î Áֽðí, cssClass ¼Ó¼ºÀÇ °ªÀ¸·Î´Â ¾Æ±î <style>¿¡¼ ÀÛ¼ºÇÑ grid ¸¦ ÁÖµµ·Ï ÇØ¿ä. ^^; ±×¸®°í, DataGrid ÄÁÆ®·ÑÀÇ Ä÷³
Ãâ·ÂºÎ¸¦ ´ÙÀ½°ú °°ÀÌ Çѹø ÀÛ¼ºÇØ º¸µµ·Ï ÇÏÀÚ±¸¿ä. Âü°í·Î, ÀÌ ÄÚµå´Â Á¦ ASP.NET Ã¥ÀÇ 'DataGrid' Àå¿¡¼ ¿¹Á¦·Î ÀÛ¼ºÇØ º¸¾Ò´ø ÆäÀÌÁöµé°ú
°ÅÀÇ À¯»çÇÕ´Ï´Ù. pubs µ¥ÀÌÅͺ£À̽º·ÎºÎÅÍ Ã¥ Á¤º¸¸¦ °¡Á®¿Í¼ ±× ¸ñ·ÏÀ» Ãâ·ÂÇØ ÁÖ´Â °ÍÀÌÁö¿ä. °í·Î, ÀÌ¹Ì ±× ºÎºÐÀ» °øºÎÇϽŠºÐµéÀº
¿Ö Columns ¼½¼ÇÀ» À̿Ͱ°ÀÌ ²Ù¸ç¾ß ÇÏ´ÂÁö, ¶ÇÇÑ ÀÌ·¸°Ô ²Ù¹Ì¸é ¾î¶² ½ÄÀ¸·Î Ãâ·ÂµÉÁö¸¦ ¿¹»óÇÏ½Ç ¼ö ÀÖÀ» °ÍÀ̶ó »ý°¢ÇÕ´Ï´Ù.
¸»¾¸µå·È´Ù½ÃÇÇ, À̹ø °Á´ PreRender¶ó´Â À볪´Â À̺¥Æ®¿¡ ´ëÇØ ¾Ë¾Æº¸´Â ½Ã°£ÀÌÁö, DataGrid ÄÁÆ®·ÑÀÇ »ç¿ë¹æ¹ýÀ̳ª, <Columns> ±¸¿ªÀÇ
ÀÛ¼º ¹æ¹ýÀ» ¾Ë·Áµå¸®´Â ½Ã°£Àº ¾Æ´Ï±â¿¡, ÀÌ·¯ÇÑ ºÎºÐ¿¡ ´ëÇÑ ¼³¸íÀº °ú°¨ÇÏ°Ô °Ç³Ê¶Ù·Á ÇÕ´Ï´Ù. ¸¸ÀÏ, ±× ºÎºÐ¿¡ ´ëÇÑ ÇнÀÀÌ ¾ÆÁ÷ ¹ÌÈíÇϽŠºÐµéÀÌ ÀÖ´Ù¸é
¸ÕÀú ±×·¯ÇÑ ºÎºÐÀ» ÇнÀÇϽŠ´ÙÀ½¿¡ ÀÌ °Á¸¦ º¸¼ÌÀ¸¸é ÇÕ´Ï´Ù. °³ÀÎÀûÀ¸·Î´Â ±×·¡¾ßÁö¸¸ ÀÌ °Á¿¡ ´ëÇÑ ÀÌÇØ°¡ ½ï½ï µÉ °ÍÀ̶ó »ý°¢Çϰŵç¿ä....
^^(ÄÚµå Áß ÇÏ¾á ¹è°æÀ» °¡Áø ºÎºÐÀÌ Á÷Á¢ Ãß°¡ÇÑ ºÎºÐÀÌ µÇ°Ú½¿´Ù ^^)
<asp:DataGrid id="DataGrid1" runat="server"
AutoGenerateColumns="False" CssClass="grid" BorderColor="#3366CC"
BorderStyle="None" BorderWidth="1px" AllowPaging="True"
BackColor="White" CellPadding="4">
<SelectedItemStyle Font-Bold="True" ForeColor="#CCFF99" BackColor="#009999">
</SelectedItemStyle>
<ItemStyle ForeColor="#003399" BackColor="White"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="#CCCCFF" BackColor="#003399">
</HeaderStyle>
<FooterStyle ForeColor="#003399" BackColor="#99CCCC"></FooterStyle>
<Columns>
<asp:BoundColumn DataField="title_id" HeaderText="ISBN">
<HeaderStyle HorizontalAlign="Center" Width="50px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle> </asp:BoundColumn>
<asp:BoundColumn DataField="title" HeaderText="Á¦¸ñ">
<HeaderStyle HorizontalAlign="Center" Width="300px"></HeaderStyle>
<ItemStyle HorizontalAlign="Left"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="pubDate" HeaderText="ÀÛ¼ºÀÏ"
DataFormatString="{0:yyyy-MM-dd (tt hh:mm)}">
<HeaderStyle HorizontalAlign="Center" Width="150px"></HeaderStyle>
</asp:BoundColumn>
<asp:ButtonColumn Text="ǦÁý" ButtonType="PushButton" HeaderText="ÆíÁý"
HeaderStyle-HorizontalAlign="Center" CommandName="edit">
</asp:ButtonColumn>
</Columns>
|
<PagerStyle HorizontalAlign="Left" ForeColor="#003399" BackColor="#99CCCC"
Mode="NumericPages"></PagerStyle>
</asp:DataGrid>
|
±×¸®µå¿¡´Â ÆäÀÌ¡ ±â´ÉÀ» »ç¿ëÇϵµ·Ï ÁöÁ¤ÇØ µÎ¾ú±¸¿ä. ±×¸®µåÀÇ ¸¶Áö¸· Ä÷³¿¡´Â ¹öưÀ» Çϳª Ãß°¡ÇØ µÎ¾ú½À´Ï´Ù. ÀÌ ¹öưÀº Ŭ¸¯µÉ °æ¿ì, ÇöÀç ÇàÀ» ÆíÁý¸ðµå·Î ¹Ù²Ù±â
À§Çؼ µÐ ¹öưÀÏ »ÓÀÔ´Ï´Ù. ±×¸®°í, ÇöÀç±îÁöÀÇ ÀÛ¾÷À¸·Î À¥ÆûÀº ´ÙÀ½°ú °°Àº
¸ð½ÀÀ» ¶ç°í ÀÖÀ» °Ì´Ï´Ù. ±×ÃÝ? ±×ÃÝ?

ÀÚ.
ÀÌÁ¦ ȸéÀÇ Ãâ·ÂºÎ´Â ¸ðµÎ ÀÛ¼ºÇÑ °Í °°³×¿ä. ÀÌÁ¦ ÄÚµå ºñÇÏÀεåÂÊÀ¸·Î
µé¾î°¡¼, DataGrid¿¡ µ¥ÀÌÅ͸¦ ¹Ý¿µÇØ º¸µµ·Ï ÇսôÙ.
ÀϹÝÀûÀ¸·Î¶ó¸é ¿©·¯ºÐÀº ´ÙÀ½°ú °°ÀÌ ÄÚµå ºñÇÏÀÎµå ±¸¿ªÀ» ²Ù¹Ì½Ç °ÍÀ¸·Î »ý°¢µÇ³×¿ä(Âü°í·Î, ÀÌ °Á¸¦
À§Çؼ ¾²ÀÌ´Â Å×À̺íÀº SQL ¼¹ö¿¡¼ ±âº»ÀûÀ¸·Î Á¦°øÇÏ´Â Pubs µ¥ÀÌÅͺ£À̽º ³»ÀÇ titles¶ó´Â Å×À̺íÀ̶ø´Ï´Ù)
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace ForTesting
{
/// <summary>
/// PreRenderEventTest¿¡ ´ëÇÑ ¿ä¾à ¼³¸íÀÔ´Ï´Ù.
/// </summary>
public class PreRenderEventTest : System.Web.UI.Page
{ privatestringConnectStr="server=(local);database= pubs;userid=sa;password=xx;";
protected System.Web.UI.WebControls.DataGrid DataGrid1;
private void Page_Load(object sender, System.EventArgs e)
{
// ¿©±â¿¡ »ç¿ëÀÚ Äڵ带 ¹èÄ¡ÇÏ¿© ÆäÀÌÁö¸¦ ÃʱâÈÇÕ´Ï´Ù.
if(!IsPostBack) {
DataGrid1.PageSize =
10;
Listing();
}
}
private void Listing()
{
SqlConnection Con = new SqlConnection(ConnectStr);
SqlCommand Cmd = new SqlCommand();
Cmd.Connection = Con;
Cmd.CommandText = " SELECT title_id, title, pubDate FROM titles " +
" Order by title_id desc";
SqlDataAdapter adp = new SqlDataAdapter(Cmd);
DataSet ds = new DataSet();
adp.Fill(ds, "MyBoard");
DataGrid1.DataSource = ds;
DataGrid1.DataBind();
}
Web Form Designer generated code
}
}
|
´ë·«ÀûÀÎ ÄÚµå´Â ÀÌÇØÇÏ½Ç °ÍÀ̶ó »ý°¢ÇÕ´Ï´Ù. ¹°·Ð, ±×¸®µåÀÇ AutoPaging
±â´ÉÀ» Äѵξú±â¿¡, ±×¸®µå¿¡ µ¥ÀÌÅ͸¦ ¹ÙÀεùÀ» Çϱâ Àü¿¡ PageSize ¸¦ ÁöÁ¤ÇØÁÖ¸é ±× Å©±â¿¡ µû¶ó ÀÚµ¿À¸·Î ±×¸®µå´Â
ÆäÀÌ¡ÀÌ µÉ °ÍÀÔ´Ï´Ù. ÇÏÁö¸¸, Áö±Ý »óÅ·δ ÆäÀÌ¡ÀÌ Àý¹Ý¹Û¿¡ µÇÁö´Â ¾ÊÁÒ. ½ÇÁ¦ ÆäÀÌ¡ÀÌ µÇ·Á¸é, ÇØ´ç ±×¸®µå ÄÁÆ®·ÑÀÇ
PageIndexChanged À̺¥Æ®¸¦ ÀÛ¼ºÇØ ÁÖ¾î¾ß Çϴϱî¿ä. ±×·¸´Ù¸é, ±×·¯ÇÑ Äڵ带 Çѹø Ãß°¡ÇØ º¸µµ·Ï
ÇսôÙ.
À̸¦ À§Çؼ´Â ±×¸®µåÀÇ PageIndexChanged À̺¥Æ® Äڵ带 ÀÛ¼ºÇÒ
Çʿ䰡 Àִµ¥¿ä. ÀÌ À̺¥Æ®¸¦ ½±°Ô ÀÛ¼ºÇϱâ À§Çؼ °£´ÜÇÏ°Ô À¥ ÆûÀÇ µðÀÚÀÌ³Ê ¸ðµå¿¡¼ ±×¸®µå¸¦ ¸¶¿ì½º·Î Ŭ¸¯ÇÑ µÚ,
[¼Ó¼º â]¿¡¼ ¹ø°³¸ð¾çÀÇ ¹öưÀ» Ŭ¸¯Çϰí, PageIndexChanged ¶ó´Â À̺¥Æ®±¸¿ªÀ» ´õºíŬ¸¯ÇÏ½Ã¸é µË´Ï´Ù. ´ÙÀ½
±×¸²Ã³·³
¸»ÀÌÁö¿ä.

±×·¯¸é, ÄÚµå ºñÇÏÀÎµå ±¸¿ª¿¡ ´ÙÀ½°ú °°Àº Äڵ尡 ÀÚµ¿À¸·Î »ý¼ºµÇ±¸¿ä. ¿©·¯ºÐÀº
±× ±¸¿ªÀ» ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºÇϽøé
µË´Ï´Ù.
private void DataGrid1_PageIndexChanged(object source,
System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
DataGrid1.CurrentPageIndex = e.NewPageIndex;
Listing(); }
|
ÇØ¼, À§ÀÇ Äڵ常À¸·Îµµ ¿©·¯ºÐÀº ÆäÀÌ¡ÀÌ µÇ´Â ¸ÚÁø ±×¸®µå¸¦ ¸¸µé¾î ³¾ ¼ö°¡
ÀÖ°Ô µÇÁö¿ä. (¹°·Ð, ÀÚµ¿ ÆäÀÌ¡ ±â´ÉÀº ´ë·®ÀÇ µ¥ÀÌÅ͸¦ ´Ù·ê °æ¿ì¿¡´Â »ó´çÈ÷ ¼º´ÉÀÌ ¶³¾îÁý´Ï´Ù¸¸, Áö±Ýó·³ 20¿©°³
¹Û¿¡ µÇÁö ¾Ê´Â µ¥ÀÌÅ͸¦ ´Ù·ê °æ¿ìÀÎÁö¶ó Çѹø »ç¿ëÇØ
º¸¾Ò½À´Ï´Ù)
´Ü, À§ÀÇ Äڵ带 ÀÛ¼ºÇÒ °æ¿ì ÁÖÀÇÇÒ Á¡Àº ÆäÀÌÁö º¯°æ ½Ã, ±× »õ·Î¿î ÆäÀÌÁö¸¦
DataGrid ÄÁÆ®·ÑÀÇ CurrentPageIndex ·Î ÁöÁ¤ÇØ ÁØ
´ÙÀ½, ¹Ýµå½Ã ´Ù½Ã±Ý µ¥ÀÌÅ͸¦ ¹ÙÀεå ÇØÁÖ¾î¾ß ÇÑ´Ù´Â Á¡ÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ÇöÀç
ÁöÁ¤ÇÑ ÆäÀÌÁö°¡ ¾Æ´Ñ ÀÌÀü ÆäÀÌÁö°¡ ³ª¿Ã ¼ö Àְŵç¿ä. ÀÚ. ÀÌÁ¦ ÆäÀÌÁö¸¦ ÄÄÆÄÀÏÇϰí Çѹø ½ÇÇàÇØ º¸¼¼¿ä.
ÆäÀÌÁö°¡ ±â´ëÇÑ ´ë·Î µ¿ÀÛÇÏ´Â °ÍÀ» È®ÀÎÇÒ ¼ö
ÀÖÁö¿ä?
±×·¸´Ù¸é, À̹ø¿¡´Â ±×¸®µå¿¡ ¿Ã·ÁÁ® ÀÖ´Â ÆíÁý ¹öưÀÌ µ¿ÀÛÇϵµ·Ï Çѹø ¸¸µé¾î
º¼±î¿ä? À̸¦ À§Çؼ´Â ±×¸®µåÀÇ
EditCommand À̺¥Æ® Äڵ带 ÀÛ¼ºÇÒ Çʿ䰡 Àִµ¥¿ä. ÀÌ À̺¥Æ®¸¦ ½±°Ô ÀÛ¼ºÇϱâ
À§Çؼ °£´ÜÇÏ°Ô À¥ ÆûÀÇ µðÀÚÀÌ³Ê ¸ðµå¿¡¼ ±×¸®µå¸¦ ¸¶¿ì½º·Î Ŭ¸¯ÇÑ µÚ, [¼Ó¼º â]¿¡¼ ¹ø°³¸ð¾çÀÇ ¹öưÀ»
Ŭ¸¯Çϰí, EditCommand ¶ó´Â À̺¥Æ®±¸¿ªÀ» ´õºíŬ¸¯ÇÏ½Ã¸é µË´Ï´Ù. ´ÙÀ½ ±×¸²Ã³·³ ¸»ÀÌÁö¿ä. (Âü. EditCommand À̺¥Æ®´Â <asp:ButtonColumn> ÀÇ CommandName ÀÌ
edit ÀÎ °æ¿ì¿¡ »ç¿ëµÇ´Â À̺¥Æ®¶ó´Â °ÍÀº ¾Ë°í
°è½ÃÁö¿ä?)

À§¿Í °°ÀÌ ´õºíŬ¸¯À» Çϸé ÄÚµå ºñÇÏÀÎµå ±¸¿ª¿¡´Â ´ÙÀ½°ú °°Àº À̺¥Æ® Äڵ尡
ÀÚµ¿À¸·Î »ý¼ºµÉ °ÍÀÔ´Ï´Ù. ±× ÄÚµå ±¸¿ª¾È¿¡ Äڵ带 ´ÙÀ½°ú °°ÀÌ ±âÀÔÇØ ÁÖ¼¼¿ä. ÀÌ ÄÚµå´Â ÇöÀç ±×¸®µå ÄÁÆ®·Ñ¿¡¼ ¼±ÅõÈ
ÇàÀ» ÆíÁý¸ðµå·Î ÁöÁ¤ÇÏ´Â ÄÚµåÀ̱¸¿ä. ±×·¸°Ô ÁöÁ¤ÇÑ ´ÙÀ½¿¡´Â, ¹Ýµå½Ã ´Ù½Ã±Ý µ¥ÀÌÅ͸¦ ¹ÙÀεùÇØÁÖ¾î¾ß ÇÑ´ä´Ï´Ù. ±×·¡¾ßÁö,
ÆäÀÌÁö°¡ ´Ù½Ã ±×·ÁÁö¸é¼ ÇØ´ç ÇุÀÌ ÆíÁý¸ðµå·Î ³ªÅ¸³ª°Ô µÇ´Â °ÍÀÌÁö¿ä
private void DataGrid1_EditCommand(object source,
System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex = e.Item.ItemIndex;
Listing();
}
|
ÀÌ·¸°Ô ÀÛ¼ºÇϼ̴ٸé, ´Ù½Ã±Ý ÆäÀÌÁö¸¦ ÄÄÆÄÀÏÇÏ°í ½ÇÇàÇØ º¸µµ·Ï Çϼ¼¿ä ^^.
±×·¯¸é ÀÌÁ¦´Â ÆäÀÌ¡ ±â´É°ú ÇÔ²² Çà ´ÜÀ§ ÆíÁý ±â´Éµµ Á¦´ë·Î µ¿ÀÛÇÏ°Ô µÉ °ÍÀÔ´Ï´Ù. ´ÙÀ½ ±×¸²°ú °°ÀÌ ¸»ÀÌÁö¿ä
^^

Á¦°¡ »ùÇ÷Π¸¸µé¾î º¸´Â ±â´ÉÀº ¿©±â±îÁö ÀÔ´Ï´Ù. ¼µÎ¿¡¼µµ ¾ð±ÞÇßµíÀÌ, À̹ø
¿¹Á¦°¡ ±×¸®µå ÄÁÆ®·ÑÀÇ »ç¿ë¹æ¹ý¿¡ ´ëÇÑ °ÍÀº ¾Æ´Ï´Ï±î¿ä. ¾îµð±îÁö³ª, À̹ø ¿¹Á¦´Â Page_PreRender
À̺¥Æ®ÀÇ È¿°úÀûÀÎ »ç¿ë¹ý¿¡ ´ëÇÑ À̾߱âÀÔ´Ï´Ù. Ȥ½Ã ±î¸Ô¾úÀ»Áö ¸ð¸£°ÚÁö¸¸, ÁøÂ¥ÀÔ´Ï´Ù. -_-+
ÇØ¼, ±×¸®µå ÄÁÆ®·Ñ¿¡´Ù°¡ ±â´ÉÀ» ºÙÀÌ´Â °ÍÀº ¿©±â±îÁö¸¸ À̾߱âÇϱ¸¿ä. ¿ø·¡ ÇÏ·Á´ø À̾߱⸦ ÀÌÁ¦ ½ÃÀÛÇØ º¼±î
ÇÕ´Ï´Ù. Áö±Ý±îÁö Äڵ带 ¸ÚÁö°Ô ÀÛ¼ºÇØ º¸¾Ò´Âµ¥¿ä. Äڵ带 ÀÛ¼ºÇÏ´Ùº¸´Ï ´À²¸Áö´Â ºÒ¸¸°°Àº °ÍÀº ¾ø¾ú³ª¿ä? ¿¹¸¦ µé¸é,
ºÒÆíÇÏ°Ô µ¿ÀÏÇÑ Äڵ带 ¹Ýº¹ÇÑ´Ù´øÁö ÇÏ´Â ¹®Á¦·Î ¸»ÀÌÁÒ. ¸¸ÀÏ, ¾î¶°ÇÑ ºÒÆíµµ ´À³¢Áö ¸øÇß´Ù¸é ¹¹.. ±âÁ¸°ú
°°ÀÌ ÀÛ¼ºÇصµ Å« ¹®Á¦´Â ¾ø½À´Ï´Ù¸¸...... Å¿À´Â ÀÌ·¯ÇÑ Äڵ带 °³¼±ÇØ º¸·Á°í ÇÕ´Ï´Ù. °³¼±ÇÏ·Á´Â °ÍÀº
¹Ù·Î... Page_Load À̺¥Æ® ÀÌÈÄ, ±×¸®µå¿¡ ±â´ÉÀ» Ãß°¡ÇÏ¸é¼ ¸Å À̺¥Æ®¸¶´Ù Ãß°¡Çؾ߸¸
ÇÏ´Â Listing() À̶ó´Â ÇÔ¼ö(¹ÙÀεùÀ» À§ÇÑ ÇÔ¼ö)ÀÇ À§Ä¡¿¡ ´ëÇÑ °ÍÀÔ´Ï´Ù.
ÄÚµå ºñÇÏÀÎµå ÆäÀÌÁö¿¡¼ Áö±Ý±îÁö ÀÛ¼ºÇÑ Äڵ带 Çѹø ÀüüÀûÀ¸·Î ¹Ù¶óº¸µµ·Ï ÇØ¿ä. Äڵ带 Àß º¸¸é ¸Å À̺¥Æ® ó¸®ÇÔ¼ö¸¶´Ù Listing() À̶ó´Â ÇÔ¼ö°¡ ¹Ýº¹µÇ°í ÀÖ´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.
private void Page_Load(object sender, System.EventArgs e)
{
// ¿©±â¿¡ »ç¿ëÀÚ Äڵ带 ¹èÄ¡ÇÏ¿© ÆäÀÌÁö¸¦ ÃʱâÈÇÕ´Ï´Ù.
if(!IsPostBack)
{
DataGrid1.PageSize = 10;
Listing(); //¿ä±â!!
}
}
private void DataGrid1_PageIndexChanged(object source,
System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
DataGrid1.CurrentPageIndex = e.NewPageIndex;
Listing(); //¿ä±â!!
}
private void DataGrid1_EditCommand(object source,
System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex = e.Item.ItemIndex;
Listing(); //¿ä±â!!
}
|
Page_Load ¿¡µµ, PageIndexChanged À̺¥Æ®¿¡µµ, EditCommand ¿¡µµ ¸»ÀÌÁö¿ä. À̰ÍÀº ´ç¿¬ÇÑ
°ÍÀ̱ä ÇÕ´Ï´Ù. ±×¸®µå°¡ ÆäÀÌ¡ÀÌ µÇ·Á¸é PageIndexChanged À̺¥Æ® ÇÔ¼ö¿¡´Ù°¡ »õ·ÎÀÌ Ãâ·ÂÇÒ ÆäÀÌÁö ¹øÈ£¸¦
ÁöÁ¤ÇÑ µÚ¿¡ ¹ÙÀεùÀ» ÇØ ÁÖ¾î¾ß Çϰí, ±×¸®µåÀÇ Æ¯Á¤ ÇàÀ» ÆíÁýÇÏ·Á¸é ¶ÇÇÑ, EditCommand À̺¥Æ® ±¸¿ª¿¡¼ ÆíÁýÇÒ
Çà ¹øÈ£¸¦ ÁöÁ¤ÇÑ ´ÙÀ½, ´Ù½Ã±Ý ¹ÙÀεùÀ» ÇØÁÖ¾î¾ß ÇÏ´Â °ÍÀº ´ç¿¬Çϱ⠶§¹®ÀÌÁö¿ä.
ÇÏÁö¸¸, ±×·¯ÇÑ À̺¥Æ®¸¦ °ÅÄ¡Áö ¾ÊÀ» °æ¿ì, Áï ÆäÀÌÁö°¡ óÀ½ ·ÎµåµÉ °æ¿ì¿¡µµ µ¥ÀÌÅÍ´Â ¹ÙÀÎµå µÇ¾î¾ß Çϱ⿡,
Page_Load ¿¡¼µµ ¹ÙÀεùÀº ¼öÇàÇϰí ÀÖ±¸¿ä, ÆäÀÌÁö°¡ Æ÷½ºÆ®¹é µÉ °æ¿ì´Â(Áï, ¿ì¸®ÀÇ Äڵ忡¼´Â
EditCommand ³ª PageIndexChanged °æ¿ì¿¡) °¢°¢ÀÇ ÇÔ¼ö³»¿¡¼ ÀÚü ¹ÙÀε带 ¼öÇàÇϱ⿡ ±»ÀÌ
¹ÙÀε带 ¸ÕÀú ¼öÇàÇÒ Çʿ䰡 ¾ø¾î¼, Page_Load À̺¥Æ® ¿¡¼´Â IsPostBack ¿©ºÎ¸¦ Ã¼Å©ÇØ¼
IsPostBack ÀÌ ¾Æ´Ñ °æ¿ì¿¡¸¸ ¹ÙÀεîÀ» ¼öÇàÇÏ°Ô Çϰí ÀÖ´Â °ÍÀÔ´Ï´Ù.
´Ù½Ã ¸»Çؼ, ÇöÀçÀÇ ÄÚµå´Â ³í¸®ÀûÀ¸·Î´Â Á¶±Ý º¹ÀâÇÑ ´ÙÀ½°ú °°Àº ±¸Á¶·Î ¹ÙÀεùÀÌ ¼öÇàµÇ°í ÀÖ´Â °ÍÀÌÁö¿ä.

±»ÀÌ ´Ù½Ã ¼³¸íµå¸®ÀÚ¸é, ÆäÀÌÁö°¡ óÀ½ ·ÎµåµÉ °æ¿ì´Â ¹«Á¶°Ç
Page_Load¿¡¼ ¹ÙÀεù!, ÆäÀÌÁö¿¡¼ ÄÁÆ®·ÑÀÇ À̺¥Æ®°¡ ¹ß»ýÇÒ °æ¿ì´Â Page_Load¿¡¼ ¹ÙÀεùÇÏÁö ¾Ê°í, °¢°¢ÀÇ
ÄÁÆ®·Ñ À̺¥Æ® ±¸¿ª³»¿¡¼ ¹ÙÀεùÀ» ¼öÇàÇÏ´Â ±¸Á¶¶ó´Â °ÍÀÔ´Ï´Ù.
ÀÌ ±¸Á¶°¡ ³ª»Ú´Ù´Â °ÍÀº ¾Æ´ÏÁö¸¸, ÆäÀÌÁö¿¡ À̺¥Æ®µéÀÌ ¸¹ÀÌ ´Ã¾î³ª°Ô µÇ¸é,
Â÷ÈÄ¿¡ ³í¸®ÀûÀ¸·Î ÀÌ·± À̺¥Æ® È帧À» ¸Ó¸®¼ÓÀ¸·Î °èȹÇϰí, Äڵ带 ÀÛ¼ºÇÏ´Â µ¥¿¡¼ ¾î¶² ³í¸®ÀûÀÎ ¿À·ù°¡ ¹ß»ýÇÒ °¡´É¼ºÀÌ
Ä¿Áø´Ù´Â ¹®Á¦°¡ ÀÖÁö¿ä. ÀÌ ¸ðµç ¹®Á¦ÀÇ ±Ù¿øÁö´Â ¹Ù·Î Page_Load ÀÔ´Ï´Ù. ÀÌ À̺¥Æ®°¡ ÄÁÆ®·ÑµéÀÇ
À̺¥Æ®º¸´Ù ¾Õ¼¼ ¼öÇàµÇ±â¿¡ ³í¸®ÀûÀ¸·Î Á¶±ÝÀº º¹ÀâÇÏ°Ô Ã³¸® ¼ø¼¸¦ ¸Ó¸®¼ÓÀ¸·Î Á¤¸®ÇØ¾ß ÇÏ´Â °ÍÀÌÁö¿ä. ±×·¸´Ù¸é, °¡Á¤ÇØ
º¾½Ã´ç. ¿¹¸¦ µé¾î, ¾î¶² À̺¥Æ®°¡ ÀÖ´Ù°í °¡Á¤ÇØ º¸´Â °ÅÁö¿ä. ±× À̺¥Æ®´Â ÄÁÆ®·ÑµéÀÇ À̺¥Æ®µéÀÌ ¸ðµÎ ÀÏ¾î³ ´ÙÀ½¿¡
¹ß»ýÇÏ´Â À̺¥Æ®¶ó°í °¡Á¤ÇØ º¸ÀÚ´Â °Ì´Ï´Ù. ±×·¸´Ù¸é, À§ÀÇ ÄÚµå ó¸® ¹æ½ÄÀº ´ÙÀ½°ú °°ÀÌ °£´ÜÇØ Áú ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö
¾Ê³ª¿ä?

ÀÌ·¸°Ô µÇ¸é, ±âÁ¸Ã³·³ ¹ÙÀεùÀ» ¼öÇàÇÏ´Â Listing() À» Page_Load
À̺¥Æ®¿Í °¢°¢ÀÇ ÄÁÆ®·Ñ À̺¥Æ®¿¡ ºÐ»ê½ÃÄѼ µÎ°í, »óȲ¿¡ µû¶ó ¼öÇàµÇ°Ô ÇÒ Çʿ䰡 ¾ø¾îÁý´Ï´Ù. ´ÜÁö, ±× ó¸®(Listing())¸¦ "¸ðµç
À̺¥Æ®µéÀÌ Ã³¸®µÈ ´ÙÀ½, ¸¶Áö¸·À¸·Î ¼öÇàµÇ´Â ¾î¶² ¸ÚÁø À̺¥Æ®"¿¡¼ ó¸®Çϸé ÀüüÀûÀ¸·Î ÄÚµå¿Í ±¸¼ºÀÌ ±ò²ûÇØÁúÅ״ϱî¿ä.
±×·¸½À´Ï´Ù. ´«Ä¡Ã¤¼Ì°ÚÁö¸¸, ±×·¯ÇÑ À̺¥Æ®°¡ ¹Ù·Î
Page_PreRender À̺¥Æ®ÀÔ´Ï´Ù. ±×·¸±â¿¡, PreRednder À̺¥Æ®¸¦ ¿©·¯ºÐÀÌ »ç¿ëÇÏ°Ô µÇ¸é, ±âÁ¸ÀÇ
ÄÚµå´Â °£´ÜÇØ Áö°Ô µÊ°ú µ¿½Ã¿¡, ³í¸®ÀûÀΠȥµ·¿¡¼ ¹þ¾î³¯ ¼öµµ ÀÖ½À´Ï´Ù.
´Ü, ÀÌ À̺¥Æ®¸¦ »ç¿ëÇÏ·Á¸é ¿©·¯ºÐÀº ÄÚµå ºñÇÏÀÎµå ±¸¿ª¿¡ À̺¥Æ® Çڵ鷯¸¦
µî·ÏÇØ ÁÖ¾î¾ß ÇÑ´ä´Ï´Ù. ÀÌ ºÎºÐÀº ·©±ÍÁö(¾ð¾î)¿¡ ¾àÇÑ ºÐµéÀÌ Á¶±Ý ÇǰïÇÏ°Ô »ý°¢ÇÒ ¼öµµ ÀÖ´Â ºÎºÐÀÏ °Í °°Àºµ¥¿ä. ¹¹
±×¸® ¾î·Á¿î °ÍÀº ¾Æ´Õ´Ï´Ù. ´ÜÁö, ÄÚµå ºñÇÏÀÎµå ÆäÀÌÁö ¾È¿¡ ³»ºÎÀûÀ¸·Î ¼û¾îÀÖ´Â InitializeComponent()
±¸¿ª¿¡´Ù°¡ ÇÑ ÁÙÀÇ Äڵ带 Ãß°¡ÇØ Áֱ⸸ ÇÏ¸é µÇ´Â °ÍÀ̴ϱî¿ä.
¿©·¯ºÐÀÇ ÄÚµå ºñÇÏÀÎµå ±¸¿ª¿¡ º¸¸é
Web Form Designer generated code ¶ó°í µÇ¾îÁ® ÀÖ´Â ºÎºÐÀÌ ÀÖÁÒ? ±× ºÎºÐÀ» È®Àå½ÃÄÑ º¸¸é InitializeComponent()
¶ó´Â ÇÔ¼ö°¡ ÀÖÀ» °ÍÀ̰í, ±× ¾È¿¡´Â VS.NETÀÌ ³»ºÎÀûÀ¸·Î ¸¸µé¾î µÐ À̺¥Æ® Çڵ鷯 µî·ÏºÎºÐÀÌ ÀÖÀ» °Ì´Ï´Ù. ´ÙÀ½°ú
°°ÀÌ ¸»ÀÌÁÒ
/// <summary>
/// µðÀÚÀÌ³Ê Áö¿ø¿¡ ÇÊ¿äÇÑ ¸Þ¼µåÀÔ´Ï´Ù.
/// ÀÌ ¸Þ¼µåÀÇ ³»¿ëÀ» ÄÚµå ÆíÁý±â·Î ¼öÁ¤ÇÏÁö ¸¶½Ê½Ã¿À.
/// </summary>
private void InitializeComponent()
{
this.DataGrid1.PageIndexChanged +=
new DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);
this.DataGrid1.EditCommand +=
new DataGridCommandEventHandler(this.DataGrid1_EditCommand);
this.Load += new System.EventHandler(this.Page_Load);
}
|
±× ¾È¿¡ PreRender À̺¥Æ® ÇÔ¼ö¸¦ µî·ÏÇÏ´Â ´ÙÀ½ Äڵ带 Ãß°¡ÇÏ¸é µË´Ï´Ù. ´ÙÀ½°ú °°ÀÌ ¸»ÀÌÁÒ.
/// <summary>
/// µðÀÚÀÌ³Ê Áö¿ø¿¡ ÇÊ¿äÇÑ ¸Þ¼µåÀÔ´Ï´Ù.
/// ÀÌ ¸Þ¼µåÀÇ ³»¿ëÀ» ÄÚµå ÆíÁý±â·Î ¼öÁ¤ÇÏÁö ¸¶½Ê½Ã¿À.
/// </summary>
private void InitializeComponent()
{
this.DataGrid1.PageIndexChanged +=
new DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);
this.DataGrid1.EditCommand +=
new DataGridCommandEventHandler(this.DataGrid1_EditCommand);
this.Load += new System.EventHandler(this.Page_Load);
this.PreRender += new System.EventHandler(this.Page_PreRender);
}
|
±×¸®°í, ÀÌÁ¦ ¿©·¯ºÐÀÇ ÄÚµå ºñÇÏÀε忡 Page_PreRender À̺¥Æ® ÇÔ¼ö¸¦ Ãß°¡ÇÏ½Ã¸é µË´Ï´Ù.
private void Page_PreRender(object sender, System.EventArgs e)
{
}
|
±×¸®°í, ¿©±â¿¡´Ù°¡ ¹ÙÀεå ÇÏ´Â ÇÔ¼öÀÎ Listing()À» ³ÖÀ¸¸é µÇ´Â °ÍÀÌÁÒ.
ÀÏ´Ü, ¿©±â¸¦ ±×·¸°Ô ²Ù¹Ì°Ô µÇ¸é ÀÌÁ¦ ±âÁ¸ ÄÁÆ®·ÑÀÇ À̺¥Æ® ÇÔ¼öµé¿¡¼´Â Listing() ÇÔ¼ö¸¦ ¸ðµÎ Á¦°ÅÇÒ ¼ö ÀÖ°Ô
µË´Ï´Ù. À§¿¡¼ ¼³¸íÇßµíÀÌ ¸»ÀÔ´Ï´Ù. ^^
ÇØ¼, ÃÖÁ¾ÀûÀ¸·Î ²Ù¸çÁö´Â ¿©·¯ºÐÀÇ ÄÚµå ºñÇÏÀεå´Â ´ÙÀ½°ú °°°Ô µÇ´Â °ÍÀÌÁÒ
private void Page_Load(object sender, System.EventArgs e)
{
// ¿©±â¿¡ »ç¿ëÀÚ Äڵ带 ¹èÄ¡ÇÏ¿© ÆäÀÌÁö¸¦ ÃʱâÈÇÕ´Ï´Ù.
if(!IsPostBack)
DataGrid1.PageSize = 10;
}
private void DataGrid1_PageIndexChanged(object source,
System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
DataGrid1.CurrentPageIndex = e.NewPageIndex;
}
private void DataGrid1_EditCommand(object source,
System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex = e.Item.ItemIndex;
}
private void Page_PreRender(object sender, System.EventArgs e)
{
Listing();
}
|
±×·¸½À´Ï´Ù. ¹ÙÀε带 À§ÇÑ ÄÚµå´Â ÀÌÁ¦ Page_PreRender ¿¡´Ù°¡¸¸
ÀÛ¼ºÇÏ¸é ¸¸»ç OK ¶ó´Â ÀǹÌÀÔ´Ï´Ù. ÀÌ·¸°Ô µÇ¸é, ¿©·¯ºÐÀÇ ÄÚµå´Â ±âÁ¸º¸´Ù ÈξÀ °¡µ¶¼ºµµ ³ô¾ÆÁö°í, ÄÚµåÀÇ ¾çµµ ÁÙ¾îµé°Ô
µË´Ï´Ù.
¹°·Ð, ¸ðµç °æ¿ì¿¡ Page_PreRender ¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ´Ù´Â °ÍÀº
¾Æ´Õ´Ï´Ù. Áö±ÝÀº ¸·»ó ÀûÀýÇÑ ¿¹°¡ ¶°¿À¸£Áö ¾Ê½À´Ï´Ù¸¸.. ÀÌ ±¸¿ªÀº ÀûÀýÇÏ°Ô »óȲ¿¡ ¸Â°Ô »ç¿ëÇØ¾ß ÇÒ °ÍÀÔ´Ï´Ù.
ÁÖ·Î, ÆäÀÌÁö¿¡ ¹º°¡¸¦ Ãâ·ÂÇϱâ À§ÇÑ ÄÚµåµéÀ» À̰÷¿¡ À§Ä¡½ÃŰ´Â °ÍÀÌ ÁÁ°ÚÁÒ.
º¯¼ö¿¡ °ªÀ» ÇÒ´çÇѴٰųª ÇÏ´Â ÃʱâÈ ÀÛ¾÷Àº À̰÷º¸´Ù´Â ¿©ÀüÈ÷ Page_Load ¿¡¼ ÇØ°áÇÏ´Â °ÍÀÌ ÁÁÀ» °ÍÀÔ´Ï´Ù.
^^
Á¤¸®ÇÏÀÚ¸é, Page_PreRender À̺¥Æ® ÇÔ¼ö´Â
- ÆäÀÌÁö Ãâ·ÂÀÛ¾÷À» À§ÇÑ ¸¶Áö¸·
±¸¿ªÀ̸ç, - ¹ÙÀεùÀ» À§ÇÑ ÃÖÀûÀÇ Àå¼Ò¶ó°í º¼ ¼ö ÀÖ½À´Ï´Ù.
ÀÌÁ¦ ÀÌ À̺¥Æ®¸¦ ÀÌ¿ëÇØ¼ ¿©·¯ºÐÀÇ ÆäÀÌÁö¸¦ Á» ´õ È¿°úÀûÀ¸·Î ²Ù¸çº¸¼¼¿ä.
^^
Å¿À¿´¾î¿ä~~~
°Á ¸ñ·ÏÀ¸·Î..
|