통합검색
· 마을서비스란?  · 포럼마을  · 일반마을  · 테마마을  · 마을랭킹  · 활동왕
· 덱스퍼트란?  · TECBOX   · PRSBOX   · 이용안내  
· DEXT제품군  · 솔루션베이  · S/W & ESD 컴포넌트
· 프로그램베이
· LiveSeminar  · LiveConference
WPF & Silverlight 포럼마을입니다.
  마을등급 WPF & Silverlight   이 마을은 포럼마을 입니다이 마을은 자유가입제 마을 입니다 마을소개 페이지로 이동 전입신청
마을촌장촌장 서학수 주민 728 since 2008-07-17
우리마을 공지사항
질문&답변
강좌&팁
자유게시판
자료실
앨범
[마을 게시판]
WPF 강좌
랑데브 게시판
칼럼 게시판
개발자 고충상담
Dev Talk
자유토론방
벼룩시장
재나미 우스개
구인/프로젝트 정보
사람인 채용 게시판
  고객지원 게시판
마이 데브피아
 나의 e-Money 내역
 활동왕 My Page
 스크랩한 게시글보기
 쪽지관리
 주소록관리

 강좌&팁
 Silverlight 4.0 ... Login 2  | Silverlight 2011-04-07 오후 12:36:34
 kaki104  kaki104님께 메시지 보내기kaki104님을 내 주소록에 추가합니다.kaki104님의 개인게시판 가기 번호: 142 추천:0  / 읽음:5,325

비가오는..꿀꿀한날..

 

...

 

일단 화면에 로그인 유저 이름이 뜨는 것 까지 확인하고 나니 금방 로그인을 만들 수 있을 줄 았았다..

 

 

하하하..이제 로그인을 본격적으로..

 

으흠..그런데 로그인 한 다음에는 어떻게 하지?

 

그 페이지는 어떻게 뿌려야하지?

 

아~~~다음 페이지 어떻게 뿌려야하는지 감이 앙와~

 

고민 좀 하다가.. 사부에게 얼마전에 배웠던 예제가 생각 나서 뒤적였다.

 

MEF를 이용해서 별도의 화면을 만들고 그걸 불러다가 ItemsControl이란 곳에 붙여 넣는 예제인데..

(예제는 파일 첨부 했음 : 필요환경 VS2010, 실버라이트4.0 정도일듯.. )

MEF 튜토리얼 페이지

 

 

그걸 응용해서 화면을 2개 만들어서 하나는 로그인 화면 또 하나는 로그아웃 화면 이렇게 2개를 만들고

 

로그아웃화면에 로그인 아이디, 패스워드 입력하는것 두고

 

로그인 화면에 로그인 유저 정보랑 첫 화면 그려주면 되지 않을까??.. 라는 생각이...

 

 

머 생각이 들었으면 바로 실행에 옮겨야지..

 

냐냐~

 

실버라이트 프로젝트에 MEF를 사용하기 위해 리퍼런스를 추가했다.

 

System.ComponentModel.Composition

System.ComponentModel.Composition.Initialization

System.ComponentModel.DataAnnotations

 

일단 실버라이트 UserControl 2개를 추가하고의 로그인 페이지와 로그 아웃 페이지에 디자인 올리고,

 

로그인 페이지 Name 프로퍼티는 login, 로그아웃은 logout으로 주고

 

cs파일에 가서 using 문써서 아까 추가한 애덜 넣구

 

[Export(typeof(UserControl))]

    public partial class Login : UserControl

    {

        public Login()

        {

            InitializeComponent();

        }

    }

 

요렇게 익스포트문을 붙여 놨다. 로그아웃도 같은 방법으로 작업하고

 

그리고 MainPage.xaml에 제물(xaml)에서는 ItemControl이란 컨트롤 추가하고 이름주고

 

cs단에서 로그인 상태를 확인해서

 

로그인이 된 상태라면 로그인 페이지를 보여주고

 

로그인이 아닌 상태라면 로그아웃 페이지를 보여주도록..

 

 

private void cbChanger_SelectionChanged(object sender, SelectionChangedEventArgs e)

        {

            //일담 ItemsControl에 등록되어있던 아이템들 사제하고

            MainColtrol.Items.Clear();

            if (e.AddedItems.Count > 0)

            {

               

   UserControl uc = ucForms.Single(p => p.Name

       == (cbChanger.SelectedItem as ComboBoxItem).Content.ToString());

                MainColtrol.Items.Add(uc);

            }

        }

 

* 위의 코드는 ItemsColtrol을 사용하는 방법을 보여주기 위해 새로 만든 코드

 

코딩을 완료를 하고나니 또 다른 문제가 발생했다..

 

로그인 상태를 어떻게 남겨 놓을것인가..

 

로그인 상태는 화면 다른 화면 이동시에도 델구 다녀야하는 넘인데..전역으로 잡으면 될려나?

 

전역 변수를 어떻게 잡지? 으으으..

 

....

 

전역 처리는 다음에..

 

셈플로 만든 코드 첨부함

 

 

코멘트쓰기
  좋음   놀람   궁금   화남   슬픔   최고   침묵   시무룩   부끄럼   난감
* 코멘트는 500자 이내(띄어쓰기 포함)로 적어주세요.
목록 보기   지금 보고 계시는 글을 회원님의 my Mblog >> 스크랩에 넣어두고 다음에 바로 보실 수 있습니다.  
회사소개  |   개인정보취급방침  |  제휴문의  |   광고문의  |   E-Mail 무단수집거부  |   고객지원  |   이용안내  |   세금계산서
사업자등록번호 안내: 220-81-90008 / 통신판매업신고번호 제 2017-서울구로-0055호 / 대표: 홍영준, 서민호
08390, 서울시 구로구 디지털로32길 30, 1211호 / TEL. 02_6719_6200 / FAX. 02-6499-1910
Copyright ⓒ (주) 데브피아. All rights reserved.