예를 들어, TextBox 용 ContextMenu가 있고 ContextMenu에서 사용자가 메뉴 항목을 클릭하면 TextBox의 Text 속성을 일부 값으로 설정하려고합니다.xaml에서 요소 속성을 설정할 수 있습니까?
이것이 가능합니까?
예를 들어, TextBox 용 ContextMenu가 있고 ContextMenu에서 사용자가 메뉴 항목을 클릭하면 TextBox의 Text 속성을 일부 값으로 설정하려고합니다.xaml에서 요소 속성을 설정할 수 있습니까?
이것이 가능합니까?
블렌드 SDK에는 ChangePropertyAction이 있습니다.
This tutorial은 (튜토리얼 대상으로 Silverlight를 그러나 이것은 WPF에서 동일) 도움이 될이 작업을 사용하는 혼합이 필요하지 않습니다
참고; Visual Studio에서도이 코드를 사용할 수 있지만 직접 코드를 입력해야합니다.
XAML에서이 모든 작업을 수행 할 수 있는지 구체적으로 묻는다면 불가능합니다. 명령 및 UI 상호 작용을 통해 View의 나머지 부분이 값에 따라 (바인딩되는) ViewModel을 업데이트하는 것이 올바른 방법입니다. 코드를 보지 않고
: 텍스트 상자의 텍스트 속성이 이미 종류의 뷰 모델에 구속력을 (그리고 나는 단지 그것이 추측 할) 경우,/바인딩 속성이 ContextMenu
에서 선택한 MenuItem
의 원하는 결과가 될 것을 설정합니다. Binding
이 맞다고 가정하면 TextBox의 값이 그에 따라 업데이트되어야합니다.
희망이 있습니다.
Phixed 님, 안녕하세요. ViewModel과 관련이 없습니다. UI 관련 작업입니다. 예로서 TextBox를 사용했습니다. 좀 더 적절한 예는 ContextMenu에 Rename MenuItem이 있고, 클릭하면 TreeView 노드가 (이름을 바꾸려면) 편집 모드 여야합니다. 이 isselfelf는 비즈니스 논리 및 VM과 관련이 없습니다. 코드 숨김에 매우 쉽다. xaml에서도 할 수 있다면 궁금했다. ChangePropertyAction이 해결책이 될 것 같다. – Goran
아, 나는 값을 변경한다는 사실에 기반하여 ViewModel을 사용했다. 귀하의 가정에 TextBox의. ChangePropertyAction이 어떻게 작동하는지 알려 주셔야합니다. – phixed
그것은 MS 컨트롤과 함께 작동하지만, 해결할 수없는 Telerik 컨트롤에 문제가 있습니다. – Goran
[MenuItem.Click] (http://msdn.microsoft.com/en-us/library/system.windows.controls.menuitem.click.aspx)의 예제를 보았습니까? – LPL
내 질문과의 연결이 보이지 않습니까? – Goran
어떤 수준의 지식을 갖고 있는지, 어떤 코드가 없는지 알고 싶지 않은지 확실하지 않았습니다. – LPL