2012-01-10 3 views
2

이 질문은 어리석게 들릴 수도 있습니다. Prism 4.0을 템플릿으로 사용하여 VS2010에서 템플릿을 편집하여 로그인 페이지를 만들고 싶습니다. 로그인 페이지로 2 개의 텍스트 상자를 가지며, 하나는 사용자 이름이고 다른 하나는 암호입니다. 하나의 버튼을 클릭하면, 그 버튼이 두 값을 모두 검색하기를 원합니다. 현재이 값은 1 값만 가지고 있기 때문에 발생하지 않습니다. 나는이 MVVM을 처음 사용합니다. 뷰 부분에 코드를 삽입하면 아마도이 모델을 위반할 수 있습니다.로그인 디자인 프리즘 4.0

이에, 당신은

<TextBox Text={Binding Username, Mode=TwoWay} /> 
<TextBox Text={Binding Password, Mode=TwoWay} /> 

그런 다음 뷰 모델에서 두 개의 새로운 속성을 생성하고 XAML에서 그 (것)들에 당신의 텍스트 상자를 결합 할 수

<Button prism:Click.Command="{Binding Login}" 
    prism:Click.CommandParameter="{Binding Username}" Margin="2"           
    ToolTipService.ToolTip="Click to navigate to the Edit View for this item."      IsCancel="True" IsDefault="False"><Image Height="20" Width="20" Source="/Module1;component/Images/NavigateToView.png" /> 
    </Button> 

답변

1

(템플릿)에서 코드의 일부입니다 Login 명령 구현에서 사용자가 텍스트 상자에 입력 한 데이터를 반영하기 때문에 이러한 속성을 사용할 수 있습니다. 이렇게하면 명령 매개 변수를 사용할 필요가 없습니다.

+0

내가 그 일을했지만, 그런 식으로 만 보인다 –

+0

@ct_anas는 (내가 따라 내 대답을 업데이 트했습니다) 바인딩에'모드 = TwoWay'을 설정해보십시오 데이터를 거치지 않고 프론트 엔드에 영향을 미칩니다. –

+0

ok.noted. 지금, 나는 username, password의 값에 접근 할 필요가있다. xaml에서 바인딩을 사용한 후. getbindingexpression을 사용해야합니다. 맞습니까? 내 문제는 지금, 내가 moduleviewmodel 페이지에, 어떻게 내가보기 페이지에서 사용하는 텍스트 상자를 가져올 건가요? –