• Daum
  • |
  • 카페
  • |
  • 테이블
  • |
  • 메일
  • |
  • 카페앱 설치
 
카페정보
카페 프로필 이미지
닷넷 (.NET) 프로그래머 모임
 
 
 
카페 게시글
Winform & WPF | C# 질문 조건부 Storyboard 실행 방법
Aaron Choi 추천 0 조회 137 22.05.31 09:09 댓글 4
게시글 본문내용
 
다음검색
댓글
  • 22.05.31 11:07

    첫댓글 질문을 확인하겠습니다.
    위의 코드는 버튼을 클릭했을 때 LeftPropertiesPanel 패널을 여는 OpenLeftSideBar 스토리 보드를 실행시키고 있는데, 이 것을 버튼이 클릭될 때마다 특정 조건을 이용해서 4개의 Panel 중 1개를 선택해서, Open되는 애니메이션을 실행시키고 싶다는 것인가요?
    왼쪽 패널은 오른쪽으로, 오른쪽 패널은 왼쪽으로, 위에 패널은 아래로, 아래 패널은 위로 열리는 애니매이션을 원하시는 것이 맞는지요?

  • 작성자 22.05.31 11:39

    안녕하세요
    정확하게 패널은 한개이고
    1개의 버튼 이벤트에서 스토리보드 시작 전 패널의 위치를 확인 후
    오른쪽으로 슬라이딩 되어 있으면 왼쪽으로, 왼쪽에 있으면 오른쪽으로 슬라이딩 시키고 싶습니다.
    대략 비하인드 코드로 표현하자면 아래와 같습니다.

    OnButtonClick()
    {
    if(StackPanel.Left >= 300) CloseLeftSideBar()
    else OpenLeftSideBar()
    }

    MVVM을 같이 공부하고 있는데 VIEW에서 비하인드 코드를 쓰고싶지 않아서 질문 드렸습니다. (__
    제가 초보이다 보니 질문의 의도를 정확하게 전달드리기가 어렵네요 ㅜㅜ

    공부하면서 작성하고 있는 소스입니다.

    https://github.com/continues77/wpf_study

  • 22.05.31 13:15

    @Aaron Choi 소스를 보니 알겠습니다. 왼쪽 하단 버튼을 처음 클릭하면, 패널이 오른쪽으로 나왔다가, 다시한번 클릭하면 왼쪽으로 이동해서 보이지 않게 하려고 하시는거군요 맞지요?

    그런데, 버튼을 한번은 누를수 있는데, 누르면 패널이 튀어나와서 버튼을 가려서 두번째는 누르지 못하는데요?
    패널에 클릭하면 닫히는 스토리 보드를 호출해서 닫히기는 하네요 버튼으로 처리를 고민하시다가 이렇게 변경하신건가요?

  • 작성자 22.05.31 14:26

    @카키104 소스까지 봐주셔서 고맙습니다.
    실제 하고자 하는 의도는 버튼을 누르면 오른쪽으로 패널을 슬라이딩 시키고, 슬라이딩 된 패널의 버튼을 누르면 자동으로
    화면전환 되면서 슬라이딩 된 패널을 감추려고 합니다. (해당 기능은 되어 있음, 패널의 클릭이벤트 발생 시 슬라이딩 닫힘)
    단, 메인뷰의 하단에 별도의 기능 버튼들이 있는데 해당 버튼을 눌렀을경우에도 이미 패널이 슬라이딩 되어 있으면 화면을 감추고 싶습니다.
    이렇게 하려고 하니 좌측 패널이 우측으로 슬라이딩이 되어 있지 않았을때에도 패널을 닫는 동작의 스토리 보드를 강제로 실행시키니 패널이 잠깐 화면에 표시되면서 닫히는 동작을 해서 이 부분을 해결해보려고 질문 드렸습니다.

최신목록