Silverlight/Lecture

실버라이트 PasswordBox.Password는 DataBind가 안된다?

길버트리 2009. 2. 6. 00:22
PasswordBox의 Password 프로퍼티에 데이터 바인딩을 시도해 보신 적이 있으신가요?
다음과 같이 AG_E_RUNTIME_MANAGED_UNKNOWN_ERROR 에러가 나실 거예요.



우리가 뭘 잘못한 걸가요?
그렇다기 보다는 PasswordBox.Password 프로퍼티는 데이터바인딩을 지원하지 않고 있다네요.

실버라이트 포럼의 관련문답을 보면, Silverlight Product Manager인 mark가 다음과 같이 답을 해 놓았습니다.
패스워드가 평범한 문자들(****가 아닌)로 보내지는 것을 방지하려고 데이터 바인드가 지원되지 않고 있고,
WPF에서와 같이 행동하고 있는 것이라는 군요. 보안이슈네요.

Password property cannot be bound to. This is compatible with WPF where they want to keep the password from being sent around in plain text. Silverlight chose to keep with the WPF behavior.

-mark
Silverlight Program Manager
Microsoft
This post is provided "as-is"


MVVM의 ViewModel을 구현할 때 프로퍼티와 Twoway Mode로 바인딩해서 사용하면 편리할텐데 그렇게는 못하니,
PasswordChanged이벤트와 Command를 연결하여, Parameter로 전달 받아서 사용해야겠습니다. ^^

PasswordBox의 Password 프로퍼티는 데이터 바인드가 불가능합니다!