<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:thr="http://purl.org/syndication/thread/1.0">
 <title type="html">DKLEE : 이동규</title>
 <id>http://dklee.net/atom</id>
 <link rel="alternate" type="text/html" hreflang="ko" href="http://dklee.net/"/>
 <subtitle type="html">Microsoft Student Partners&#13;
HOONS.KR WPF</subtitle>
 <updated>2010-03-06T01:59:46+09:00</updated>
 <generator>Textcube.com 2.0 Garnet</generator>
 <entry>
  <title type="html">개인 웹서버 설정을 위한 팁 #2 - DDNS &amp;amp; DynDNS 사용법</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/72"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/72" thr:count="2" thr:updated="2010-03-05T23:31:18+09:00"/>
  <category term="Curiosity"/>
  <category term="ddns"/>
  <category term="dynamic dns"/>
  <category term="DynDNS"/>
  <category term="dyndns update"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/72</id>
  <updated>2010-03-05T22:24:38+09:00</updated>
  <published>2010-03-05T22:07:23+09:00</published>
  <summary type="html"> 안녕하세요 DKLEE(이동규) 입니다. &amp;nbsp; DynDNS 사용하여 DDNS를 설정하는 방법을 포스팅해보겠습니다. 차례는 다음과 같습니다. 그림만 보고 따라하시면 쉽게 완성할 수 있습니다. &amp;nbsp; http://www.dyndns.com/ &amp;nbsp; 1.Dynamic DNS 시작하기 &amp;nbsp;&amp;nbsp; 1.Dynamic DNS &amp;nbsp; &amp;nbsp;2.Dynamic DNS Free 입장 &amp;nbsp; &amp;nbsp;3.Dynamic DNS Free 시작하기 &amp;nbsp; &amp;nbsp;4.무료도메인 신청 및 서버정보 입력 &amp;nbsp; &amp;nbsp;5.무료도메인 신청, 회원가입 동시진행 &amp;nbsp; &amp;nbsp;6.인증메일 확인 &amp;nbsp; &amp;nbsp;7.서비스 활성화 2.DynDNS Update Clients 사용하기 &amp;nbsp; &amp;nbsp;1.다운로드 하기 &amp;nbsp;&amp;nbsp; 2.서버에 설치후 실행하기 &amp;nbsp;&amp;nbsp; 3.설정하기 &amp;nbsp;&amp;nbsp; 4.Netcraft 에서 확인하기(http://netcraft.com) 3.결론 &amp;nbsp; 1. Dynamic DNS 시작하기 &amp;nbsp; &amp;nbsp;&amp;nbsp; 1. Dynamic DNS &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 2. Dynamic DNS Free 입장 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 3. Dynamic DNS Free 시작하기 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 4. 무료도메인 신청 및 서버정보 입력 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 5. 무료도메인 신청, 회원가입 동시진행 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 6. 인증메일 확인 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 7. 서비스 활성화 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2. DynDNS Update Clients 사용하기 &amp;nbsp; &amp;nbsp;&amp;nbsp; 1. 다운로드 하기 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 2. 서버에 설치후 실행하기 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 3. 설정하기 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 4. Netcraft 에서 확인하기(http://netcraft.com) &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; 3. 결론 무료도메인 신청과 DDNS 설정 그리고 소프트웨어를 이용하여 실시간으로 유동IP를 업데이트하는 과정을 알아보았습니다. 별도의 설명이 없이도 그림으로도 이해가 될만큼 간단합니다. &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/72&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
 <entry>
  <title type="html">C# 인쇄를 해보자</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/71"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/71" thr:count="0"/>
  <category term="C#"/>
  <category term="c#"/>
  <category term="PageSettings"/>
  <category term="PRINT"/>
  <category term="PrintDocument"/>
  <category term="PrintPreviewDialog"/>
  <category term="&#xC778;&#xC1C4;"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/71</id>
  <updated>2010-03-05T14:33:58+09:00</updated>
  <published>2010-03-05T14:30:23+09:00</published>
  <summary type="html"> 안녕하세요 DKLEE(이동규) 입니다. &amp;nbsp; 이번 포스팅에서는 C# 에서의 인쇄기능을 예제를 통해 알아보겠습니다. 인쇄 미리보기를 통해 작업한 내용을 확인해보고 인쇄까지 작동하는 방법을 아래 코드를 통해 확인해 볼 수 있습니다. &amp;nbsp; [code csharp] using System; using System.Drawing; using System.Windows.Forms; using System.Drawing.Printing; namespace ImagePrinting_ex01 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { PrintDocument docToPrint = new PrintDocument(); PageSettings ps = new PageSettings(); ps.Margins = new Margins(10, 10, 10, 10); docToPrint.DefaultPageSettings = ps; PrintPreviewDialog pd = new PrintPreviewDialog(); pd.ClientSize = new Size(500, 500); pd.UseAntiAlias = true; docToPrint.PrintPage += new PrintPageEventHandler(docToPrint_PrintPage); pd.Document = docToPrint; pd.Show(); } void docToPrint_PrintPage(object sender, PrintPageEventArgs e) { Font pf = new Font(&amp;quot;궁서&amp;quot;, 20, FontStyle.Regular); Image img = Image.FromFile(@&amp;quot;..\..\test.png&amp;quot;); e.Graphics.DrawImage(img, 0, 0, 500, 500); string str = &amp;quot;My name is Dongkyu Lee&amp;quot;; e.Graphics.DrawString(str, pf, Brushes.Black, 10, 500); } } } [/code] &amp;nbsp; 아래 그림은 실행되고 있는 모습입니다. 추가한 이미지와 글씨가 바르게 나옴을 확인해 볼 수 있습니다. 인쇄 미리 보기가 실행되며 그안에서 인쇄버튼 / 확대 / 보기방법 을 실행할 수 있습니다. &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/71&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
 <entry>
  <title type="html">C# Write Files using FileStream and StreamWriter</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/70"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/70" thr:count="0"/>
  <category term="C#"/>
  <category term="c#"/>
  <category term="file"/>
  <category term="filestream"/>
  <category term="streamwriter"/>
  <category term="Write"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/70</id>
  <updated>2010-03-05T14:18:23+09:00</updated>
  <published>2010-03-05T13:51:20+09:00</published>
  <summary type="html"> 안녕하세요 DKLEE(이동규) 입니다. &amp;nbsp; 아래의 간단한 예제를 통해 C#에서 파일 작성을 알아보겠습니다. 이전 포스팅에서는 BinaryWriter를 사용 하였지만 이번에는 StreamWriter 를 이용해보겠습니다. &amp;nbsp; [code csharp] using System.IO; namespace FileWrite_ex01 { class Program { private const string file_name = @&amp;quot;c:\test.txt&amp;quot;; //원하는 경로 및 파일명 static void Main(string[] args) { if (File.Exists(file_name)) { return; } FileStream fs = new FileStream(file_name, FileMode.CreateNew); StreamWriter sw = new StreamWriter(fs); sw.Write(&amp;quot;DKLEE&amp;quot;); //작성내용 sw.Close(); fs.Close(); } } } [/code]&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/70&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
 <entry>
  <title type="html">개인 웹서버 설정을 위한 팁 #1 - DDNS &amp;amp; DNSEver 사용법</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/69"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/69" thr:count="2" thr:updated="2010-03-05T20:51:58+09:00"/>
  <category term="Curiosity"/>
  <category term="ddns"/>
  <category term="dnsever"/>
  <category term="&#xAC1C;&#xC778; &#xC6F9;&#xC11C;&#xBC84;"/>
  <category term="&#xB3C4;&#xBA54;&#xC778;"/>
  <category term="&#xBB34;&#xB8CC;&#xB3C4;&#xBA54;&#xC778;"/>
  <category term="&#xC6F9;&#xC11C;&#xBC84;"/>
  <category term="&#xC720;&#xB8CC;&#xB3C4;&#xBA54;&#xC778;"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/69</id>
  <updated>2010-03-05T22:03:29+09:00</updated>
  <published>2010-03-04T20:18:48+09:00</published>
  <summary type="html"> 안녕하세요 DKLEE(이동규) 입니다. &amp;nbsp; 1. DDNS 란? - DDNS는 Dynamic Domain Name Service 약자입니다. 기존의 DNS 에서 동적(Dynamic)기능을 추가한 것으로서 웹 서버가 구축된 장소가 유동IP 환경임에도 불구하고 도메인 주소를 IP 변화에 따라 연결 시켜주는 서비스 입니다. 따라서 외부에서 자신의 서버로 접속하게되더라도 고정IP를 사용하는 효과를 얻을 수 있습니다. &amp;nbsp; 2. 도메인(Domain) - 인터넷을 통해 원하는 정보를 서로 교환 하기위해 우리는 각각의 서버를 찾아가야 합니다. 인터넷에 열결된 모든 컴퓨터들은 각각의 주소(IP) 를 갖습니다. 하지만 숫자로 이루어진 IP는 외우고 구별하기 힘들기때문에 알아보기 쉽게 문자를 사용하는 주소를 고안해서 나오게 된것이 도메인 주소입니다. - 무료도메인, 일반적으로 알고있는 유료 도메인 com/net/org 등 에 대한 도메인을 무료로 주는것은 아닙니다. 특정 도메인을 소유하고 그 도메인에 대한 2차 가상도메인을 생성하여 사용자의 홈페이지 주소로 포웨딩 또는 리디렉션해주는 서비스 입니다. 예를 들어 http://wo.tc/ 에서 무료 도메인을 서비스 하게되면 http://xxx.wo.tc/ 와같이 xxx 에 자신만의 이름으로 숫자대신 짧은 도메인을 만들 수 있습니다. - 유료도메인, 일반적으로 알고있는 유료 도메인 com/net/org 등 으로 매년 일정금액을 지불하여 사용하게되며 신뢰성, 안정성이 높습니다. &amp;nbsp; 3. DDNS 서비스 소개 (무료) - DynDNS: (http://www.dyndns.com/) 영어 - DNSEver: (http://kr.dnsever.com/) 영어/한글 &amp;nbsp; 4. DDNS 설정방법 (DNSEver 이용) - DNSEver를 사용한 DDNS 설정 방법을 예제를 통해 알아 보겠습니다. 유동IP 환경에서 자신만의 서버가 구축되었다면 IP주소를 통한 접속이 가능하게 됩니다. 하지만 이런 변경되는 숫자를 매번 일일이 기억하기는 힘듭니다. 따라서 이를 해결하기위해 도메인과 유동IP 간의 연결이 필요합니다. 이러한 역활을 DDNS 에서 대신 해주게 됩니다. 그중에서도 무료로 사용할 수 있는 DNSEver를 살펴보겠습니다. 무료도메인을 얻는과정부터 진행해 보도록 하겠습니다. 처음 서버를 구축하시는 분이시라면 우선 가장 중요한 도메인이 필요하게됩니다. 만약 유료도메인을 가지고 계신다면 도메인호스팅 업체의 도메인세팅에서 네임서버를 연결을 DDNS 서비스에 따라 변경해 주시고 이후 내용을 따라하시면 됩니다. 무료도메인의 신청부터 살펴보겠습니다. DNSEver 에서는 몇가지 무료도메인을 제공해주고 있고 그중에서도 굉장히 짧은 도메인도 구해 볼 수 있습니다. [그림 1] &amp;nbsp; [그림 1]과 같이 DNSEver에 가입하고 로그인 하게 되면 왼쪽 매뉴에서 ‘DNSEver제공 서브도메인’을 찾아 볼 수 있습니다. 이곳에서는 서브도메인을 관리(추가, 삭제) 할 수 있습니다. [그림 2]와 같이 적당한 도메인명을 입력하고 추가를 해보겠습니다. 짧고 괜찮은 도메인을 볼 수 있습니다. &amp;nbsp; [그림 2] &amp;nbsp; 추가가 완료되면 바로 관리서비스를 시작해 볼 수 있습니다. [그림 1]에서 ‘도메인을 선택하세요’라고 적혀 있는 콤보박스를 클릭하게 되면 현제 등록되어 있는 자신의 도메인의 목록이 나오며 클릭하게 되면 관리를 할 수 있습니다. &amp;nbsp; [그림 3] &amp;nbsp; [그림 3]에 나온 관리외에 상당히 많은 설정이 가능합니다. 무료라고 하기에는 상당히 프로페셔널 합니다. 이제 ‘다이나믹 DNS 관리 &amp;gt;&amp;gt;’를 클릭하여 세부설정을 해보겠습니다. &amp;nbsp; [그림 4] &amp;nbsp; [그림 5] &amp;nbsp; [그림 4]에서 ‘다이나믹 DNS 추가’를 살펴보게되면 호스트이름/IP주소/메모 를 입력할 수 있는 칸이 나오게됩니다. 만약 http://xxx.dklee.wo.tc 처럼 다시 서브 도메인을 만들고 싶다면 명명해줘야 합니다만 지금은 http://dklee.wo.tc 로 접속을 원하기 때문에 빈칸으로두고 IP주소를 적어보겠습니다. IP주소는 현재 서버 접속이 가능한 숫자이겠죠? [그림 5]처럼 설정이 완료 되었다면 설정한 도메인으로 접속이 제대로 되는지 테스트를 해봐야합니다. 지금은 정상적으로 명명한 도메인으로 접속이 될지 몰라도 유동IP 이기때문에 IP주소가 변경된다면 위 도메인으로 접속이 불가능해 질것입니다. 다음으로 이상황을 해결해보는 방법을 알아보겠습니다. &amp;nbsp; 해결책은 바로 서버컴퓨터 IP주소를 실시간으로 업데이트 해주는것입니다. 굉장한 방법을 기대하셨다면 약간은 실망하셨겠지만 말입니다. DNSEver에서는 DNSClient라는 프로그램을 제공합니다. 이 프로그램을 통해 실시간으로 서버IP를 업데이트할 수 있습니다. 즉, 유동IP임에도 지속적인 업데이트로 마치 고정IP인듯 서버를 유지할 수 있습니다. 다운로드 하여 서버컴퓨터에 설치를 해보면 [그림 6]과 같은 클라이언트를 볼 수 있으며 아이디/인증코드를 넣어야 로그인이 가능합니다. 아이디는 DNSEver에서 사용하던 아이디이지만 인증코드는 아직 확인하지 않았습니다. 아래 ‘인증코드 보기’버튼을 클릭하여 웹상의 로그인을 진행하게 되면 인증코드를 조회해 볼 수 있습니다. 확인된 인증코드로 로그인을 진행합니다. &amp;nbsp; [그림 6] &amp;nbsp; [그림 7] &amp;nbsp; [그림 7]을 보시면 우선 첫번째 탭(호스트 설정)에서 왼쪽 리스트에는 설정할 수있는 도메인 목록이 나오며 오른쪽 리스트로 추가 할 수 있게 구성되어 있습니다. 업데이트할 도메인을 선택후 추가하고 다음 탭(IP 설정)으로 넘어가겠습니다. &amp;nbsp; [그림 8] &amp;nbsp; [그림 8] IP 설정에서는 수동으로 현재 서버의 IP 주소를 사용자가 업데이트를 할 수 있습니다. 업데이트 방식을 통해 자동으로 설정된 IP주소 혹은 사용자가 임의로 IP주소를 설정할 수 있습니다. &amp;nbsp; [그림 9] &amp;nbsp; 다음으로는 프로그램 설정탭 입니다. [그림 9]에서 보다시피 일반적인 설정과 동시에 중요한 설정인 ‘IP 확인 설정’을 할 수 있습니다. 변경되는 유동IP를 체크하는 주기를 설정하게됩니다. 5분으로 설정했다면 매 5분마다 서버 컴퓨터의 IP주소를 체크하여 업데이트 해주는 것입니다. 바로 이것이 DDNS의 핵심입니다. &amp;nbsp; 5. Netcraft - Netcraft는 영국에 위치한 인터넷 서비스 회사입니다. 이곳에서는 웹 서버와 웹 호스팅의 시장 점유율 분석, 웹 서버 및 서버운영 체제를 탐지하고 정보를 제공해 주는 곳입니다. Netcraft을 이용하여 운영체제, 웹서버를 확인할 수 있으며 Uptime Graph를 통해 시각적 정보를 얻을 수 있습니다. 지금까지 DDNS 설정을 마쳤다면 Netcraft를 이용하여 자신의 서버에 대한 정보를 볼 수 있습니다. http://netcraft.com 에 접속하여 [그림 10]에서 와 같이 텍스트 박스에 확인해 보고자 하는 주소를 입력하면 됩니다. &amp;nbsp; [그림 10] &amp;nbsp; [그림 11] &amp;nbsp; 진행하게 되면 [그림 11]과 같이 사이트에 대한 정보가 나오게되며 아래쪽에는 운영체제 웹 서버 최종 변경일등이 자세하게 나오게 됩니다. 이를 통해 자신이 설정한 DDNS 및 도메인이 정상적으로 작동하는지 알 수 있습니다. 나아가서 [그림 11]의 오른쪽 상단에 위치한 Uptime graph를 통해 서버 가동 성능에대한 모니터링을 볼 수 있습니다. &amp;nbsp; 6.참고자료 - DDNS 설정방법 참고 사이트 DNSEver  DNSEver 공식 블로그: http://blog.kr.dnsever.com/ &amp;nbsp;DNSEver 제공 DDNS 설정방법: http://blog.kr.dnsever.com/?p=6  공식설명서: http://kr.dnsever.com/help/wiki/wiki.php?DNSEverHelpPage DynDNS &amp;nbsp;DynDNS 가입방법: http://blog.naver.com/kero1983/51066869  DynDNS Updater 사용방법: http://blog.eztcp.com/sollae/75 &amp;nbsp;DDNS 공식설명서: http://www.dyndns.com/support/kb/dyndns.html - 추가 참고사이트 DDNS 개념: http://blog.naver.com/ejkh3?Redirect=Log&amp;amp;logNo=100005962653 DDNS 개념: http://en.wikipedia.org/wiki/Ddns DNSEver를 이용하여 블로그 연동: http://blog.itlee.kr/90045106950 유동IP, 공유기 환경에서 FTP 서버구축: http://altang.tistory.com/134 DynDNS와 공유기 연결설정: http://blog.naver.com/iptime7/120101697565 &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/69&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
 <entry>
  <title type="html">[WPF] 네비게이션 #1 - 페이지 전환</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/67"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/67" thr:count="0"/>
  <category term="WPF"/>
  <category term="CS"/>
  <category term="hyperlink"/>
  <category term="Navigation"/>
  <category term="navigationservice"/>
  <category term="page"/>
  <category term="WPF"/>
  <category term="XAML"/>
  <category term="&#xB124;&#xBE44;&#xAC8C;&#xC774;&#xC158;"/>
  <category term="&#xC804;&#xD658;"/>
  <category term="&#xD398;&#xC774;&#xC9C0;"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/67</id>
  <updated>2010-03-03T13:05:30+09:00</updated>
  <published>2010-03-03T11:22:37+09:00</published>
  <summary type="html"> WPF 페이지의 전환 서비스&amp;nbsp; &amp;nbsp; 안녕하세요 DKLEE (이동규) 입니다. 이번 강좌에서는 WPF 의 NavigationService 를 사용하여 Page간의 전환을 따라하기 예제를 통해 알아보겠습니다. [그림 1]과 같이 페이지 전환이 가능하고 네비게이션바를 통해 다시 돌아갈 수 있는 기능을 살펴보겠습니다. Host 라고 이름지은 NavigationWindow 에서 Page1 과 Page2가 전환되는 예제를 구현해 보겠습니다. 개발도구는 Visual Studio 2008 입니다. &amp;nbsp; [그림 1] 자 이제 강좌를 시작하겠습니다!! [그림 2] &amp;nbsp; [그림 3] [그림 2]와 같이 새 프로젝트를 생성하게 됩니다. 생성이 완료되면 [그림 3]처럼 솔루션 탐색기에 나오게 됩니다. 이번 강좌에서는 Window 요소를 사용하지않기 때문에 Windows1.xaml을 삭제를 하고 새로운 Window 즉, NavigationWindow 를 만들어 보겠습니다. [그림 4] 참조 &amp;nbsp; [그림 4] &amp;nbsp; 새로운 창의 이름을 &amp;#039;Host&amp;#039;로 명하여 만들고 비하인드 코드로(단축키 F7) 넘어와서 상속 클래스를 기존의 Window 에서 NavigationWindow로 [그림 5]와 같이 변경 하겠습니다.(왼쪽에서 오른쪽으로) &amp;nbsp; [그림 5] &amp;nbsp; 위의 과정대로 상속 클래스의 변경이 완료되었다면 다자인 코드(XAML)로 다시 넘어와(단축키 Shift+F7) 몇가지 수정을 해야합니다. 아래 [그림 6]을 통해 코드의 변화를 살펴 보겠습니다. 노란색으로 강조된 부분이 변경된 코드입니다. &amp;nbsp; [그림 6] &amp;nbsp; 디자인 코드를 살펴보면 우선 Window -&amp;gt; NavigationWindow로 변경 되었습니다. 또한 Source 속성을 추가해 줄수 있습니다. 이를 통해 최초 로드되는 페이지를 설정해 줄 수 있습니다. 이번 예제에서는 Page1 에서 Page2 로 전환을 살펴보기 위해 최초 페이지는 Page1 으로 하겠습니다. 하지만 아직 Page1 은 작성되지 않았기때문에 [그림 7]과 같이 Page1.xaml 을 추가해 보겠습니다. 이어서 Page2.xaml 또한 추가하겠습니다. (페이지 추가에 주의) &amp;nbsp; [그림 7] &amp;nbsp; 다음으론 실제로 페이지 전환을 위해 링크를 만드는 방법을 두가지로 알아보겠습니다. 첫번째는 비하인드 코드에서 두번째는 다자인 코드에서 입니다. 아래 [그림 8]에서 두가지를 비교해 보았습니다만 역시 디자인 코드에서의 작성이 조금더 간결한거 같습니다. 텍스트 블럭안에 Hyperlink 를 통해 연결하였습니다.(왼쪽 - 코드비하인드 / 오른쪽 - 디자인코드) &amp;nbsp; [그림 8] &amp;nbsp; 이제 실행해볼 일만 남았습니다. 하지만 여기서 실행하게되면 런타임시에 에러가 나오게 되는데요 이유는 App.xaml 내에 시작 Uri 기본 설정이 이전에 삭제했던 Windows1 로 되어 있기 때문입니다. App의 디자인 코드로 넘어와서 다음과 같이 수정해주셔야 합니다. &amp;nbsp; StartupUri=&amp;quot;Host.xaml&amp;quot; &amp;nbsp; 실행을 하여 &amp;quot;Go to Page 2&amp;quot; 를 클릭하게되면 정상적으로 다음페이지로 넘어 가게되는 모습을 볼 수 있습니다. 또한 다음페이지로 넘어가게되면 인터넷 익스플로러와 같이 네비게이션 바에 화살표가 활성화 되는것을 볼 수 있고 히스토리또한 남는 것을 확인할 수 있습니다. 보기에는 복잡해 보이지만 직접 따라 해보시면 굉장히 간단하게 구현됨을 볼 수 있습니다. 이상으로 이번 강좌를 마치겠습니다. 다음 강좌에서는 네비게이션에서 가장 중요한 데이터 전달입니다. 단순 화면만 넘겨 보여줄 프로그램은 없다고 생각됩니다. 차례대로 페이지가 넘어가면서 데이터 전달또한 필요하게 됩니다. 다음 강좌를 기대하세요^^ &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/67&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
 <entry>
  <title type="html">훈스닷넷 정기세미나 RIA 파트 - WPF 3D</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/68"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/68" thr:count="0"/>
  <category term="WPF"/>
  <category term="3d"/>
  <category term="RIA"/>
  <category term="WPF"/>
  <category term="&#xBC1C;&#xD45C;&#xC790;&#xB8CC;"/>
  <category term="&#xC138;&#xBBF8;&#xB098;"/>
  <category term="&#xD6C8;&#xC2A4;&#xB2F7;&#xB137;"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/68</id>
  <updated>2010-03-03T14:50:04+09:00</updated>
  <published>2010-02-26T09:00:00+09:00</published>
  <summary type="html"> 안녕하세요 DKLEE(이동규) 입니다. &amp;nbsp; 이번 2010년 2월 25일에 진행하였던 훈스닷넷 RIA 파트 정기세미나 발표자료와 동영상을 아래와 같이 첨부합니다. 저의 첫 공식적인 세미나 이였습니다. 비록 긴장도 많이하고 라이브 코딩도중 대공황 상태에 빠졌지만 어뜨케든 끝나긴 끝났네요^^ &amp;nbsp; &amp;quot;WPF 3D 기초부터 활용까지&amp;quot; 자료 첨부합니다. 발표자는 전호진, 이동규&amp;nbsp;입니다. &amp;nbsp; [발표자료] &amp;nbsp; 동영상을 올렸으나 총길이가 44분인 관계로 서비스 해주는 곳이 없네요 &amp;nbsp; 필요하신분은 livedk at gmail.com &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/68&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
 <entry>
  <title type="html">LINQ to XML</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/66"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/66" thr:count="0"/>
  <category term="LINQ"/>
  <category term="LINQ to XML"/>
  <category term="xml add"/>
  <category term="xml &#xC0AD;&#xC81C;"/>
  <category term="xml &#xC218;&#xC815;"/>
  <category term="xml &#xCD94;&#xAC00;"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/66</id>
  <updated>2010-02-17T13:54:04+09:00</updated>
  <published>2010-02-17T13:53:41+09:00</published>
  <summary type="html"> 안녕하세요 DKLEE 입니다. &amp;nbsp; 일전에 포스팅하였던 &amp;nbsp; LINQ to XML - Write (쓰기) LINQ to XML - Read (읽기) &amp;nbsp; 에서 노드 삭제, 추가, 수정을 추가한 예제를 업로드 합니다. 환경은 VS2008 이고 Console App 입니다^^ &amp;nbsp; 필요하신 분들은 참고하세요 &amp;nbsp; &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/66&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
 <entry>
  <title type="html">MSP 이였지요</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/65"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/65" thr:count="7" thr:updated="2010-02-17T07:59:01+09:00"/>
  <category term="Learn Play Work"/>
  <category term="Microsoft"/>
  <category term="Microsoft Student Partners"/>
  <category term="MSP"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/65</id>
  <updated>2010-02-05T01:52:12+09:00</updated>
  <published>2010-02-05T01:52:12+09:00</published>
  <summary type="html"> &amp;nbsp; MSP 의 활동도 이제 마무리 되어가네요^^ㅋ&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/65&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
 <entry>
  <title type="html">WPF Copy Listbox Items to Listbox</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/64"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/64" thr:count="0"/>
  <category term="WPF"/>
  <category term="c#"/>
  <category term="Copy"/>
  <category term="listbox"/>
  <category term="multiselection"/>
  <category term="selectionmode"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/64</id>
  <updated>2010-02-05T09:12:41+09:00</updated>
  <published>2010-02-03T13:52:03+09:00</published>
  <summary type="html"> &amp;nbsp;훈스닷넷 WPF 게시판에 Listbox1 에 있는 내용을 Listbox2 로 복사하는 질문이 올라와서 답변을 해주는 과정에서 테스트를 하던중 내용이 간단하고 다른분들도 궁금해 하실 부분이 있을거라 생각하여 이렇게 포스팅을 남깁니다. &amp;nbsp; 문제 우선 해야할 과제는 다음과 같습니다. Listbox1 은 MultiSelection 이 가능합니다. Listbox1에서 여러개의 Items 을 선택하고 버튼을 누르게 되면 선택된 Items 가 LIstbox2 로 추가 되어야 하는 것입니다. &amp;nbsp; 아래 그림을 보면 간단하게 이해되실 겁니다. &amp;nbsp; 해결책 C# 에서는 매우 간단하게 해결할 수 있습니다. 우선 Listbox1 의 속성중 SelectionMode 를 Multiple 로 변경해주셔야 합니다. 그리고 버튼 Click 이벤트를 만들어 아래와 같은 소스를 추가해주시면 됩니다. &amp;nbsp; [code csharp] foreach (ListBoxItem item in listBox1.SelectedItems) { listBox2.Items.Add(item.Content); } [/code] 위의 코드를 버튼을 클릭했을 경우라든지 필요할 경우 사용할 경우 foreach 구문을 돌며 아이템을 추가 해줄것입니다. 이상으로 짧고 간단한 포스팅을 마칩니다.^^ &amp;nbsp; &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/64&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
 <entry>
  <title type="html">ASP.NET ListBox Double Click Event</title>
  <link rel="alternate" type="text/html" href="http://dklee.net/63"/>
  <link rel="replies" type="application/atom+xml" href="http://dklee.net/atom/discuss/63" thr:count="7" thr:updated="2010-01-28T00:43:01+09:00"/>
  <category term="ASP.NET"/>
  <category term="ASP.NET"/>
  <category term="Attributes"/>
  <category term="c#"/>
  <category term="ClientScript"/>
  <category term="double click"/>
  <category term="double click event"/>
  <category term="JavaScript"/>
  <category term="listbox"/>
  <category term="listbox double click"/>
  <category term="popup"/>
  <category term="RegisterClientScriptBlock"/>
  <category term="&#xBE44;&#xD558;&#xC778;&#xB4DC;&#xCF54;&#xB4DC;"/>
  <category term="&#xC0C8;&#xCC3D;&#xB744;&#xC6B0;&#xAE30;"/>
  <author>
   <name>DKLEE</name>
  </author>
  <id>http://dklee.net/63</id>
  <updated>2010-01-24T20:57:34+09:00</updated>
  <published>2010-01-24T19:25:32+09:00</published>
  <summary type="html"> 안녕하세요 DKLEE&amp;nbsp;입니다. &amp;nbsp; &amp;nbsp;저는 최근 2010 대한민국 매쉬업 경진대회(KOREA MASHUP CONTEST 2010)&amp;nbsp;에 참가하여 2개 작품을 제출하게 되었습니다. 작품은 아래 와 같습니다. 방문해서 감상 한번 해주세요^^ &amp;nbsp; 1.MC Opener Silverlight 기반의 UCC 사이트로, 추가로 메타데이터 정보제공 (http://mashupkorea.com/2010/vote_detail?id=68) &amp;nbsp; 2. Study On ASP.NET 기반에 Google 맵 사용하여, 스터디 장소에 대한 정보를 공유 (http://mashupkorea.com/2010/vote_detail?id=66) &amp;nbsp; &amp;nbsp; &amp;nbsp;본론으로 돌아가겠습니다. 두번째 매쉬업 작품인Study On은 ASP.NET 기반의 사이트입니다. 이전에도 간단한 예제정도 해보았지만 이런 작은 사이트 하나를 만들어 보긴 처음이었습니다. 생각보다 정말 많이 어려웠고 특히 Control 의 배치 부분에서 정말 많이 애먹었었습니다. 웹쪽 개발이 살짝 꺼려지는군요ㅋ 그래도 Silverlight 는 환영입니다!! &amp;nbsp; &amp;nbsp;작업을 하던 도중 ListBox 의 내용을 더블 클릭하여 내부에 들어 있는 URL을 새창에 띄워주는 작업이 필요하게 되었습니다.(Study On&amp;nbsp;접속하셔서 왼쪽과 아래부분의 리스트 박스 더블클릭) 기본적으로는 이벤트가 존재하지 않았습니다. 따로 이벤트를 만들어 줘야 해야 합니다. 아래와 같은 방법으로 비하인드 코드내부에 작성을 하여 등록 해주시면 됩니다. &amp;nbsp; [code csharp] namespace ListBox_Double_Click { public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //Init InitListBox(); } } //Init private void InitListBox() { //Load Data LoadData(); //Setting ListBox Double Click SettingDoubleClick(); } //Load Data private void LoadData() { ListItemCollection lic = new ListItemCollection(); lic.Add(new ListItem(&amp;quot;DKLEE&amp;quot;, &amp;quot;http://dklee.net&amp;quot;)); lic.Add(new ListItem(&amp;quot;HOONS&amp;quot;, &amp;quot;http://hoons.kr&amp;quot;)); lic.Add(new ListItem(&amp;quot;DKLEE&amp;quot;, &amp;quot;http://dklee.net&amp;quot;)); foreach (ListItem li in lic) { ListBox_test.Items.Add(li); } } //Setting ListBox Double Click private void SettingDoubleClick() { ListBox_test.Attributes.Add(&amp;quot;onDblClick&amp;quot;, &amp;quot;Listbox_doubleClick();&amp;quot;); string doubleClickScript = @&amp;quot; &amp;quot;; Page.ClientScript.RegisterClientScriptBlock(this.GetType(), &amp;quot;doubleClickScript&amp;quot;, doubleClickScript); } } } [/code] &amp;nbsp; ListBox 에 Attribute 추가와 javascript 를 비하인드 코드에서 등록하여 작동되는 원리 입니다. &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://dklee.net/63&quot;&gt;글 전체보기&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;</summary>
 </entry>
</feed>
