2012-05-28 3 views
1

텍스트 상자가있는 wpf 응용 프로그램을 만듭니다. 텍스트 상자가 비활성화되면 (기본 상태) 사용자가 바인딩 할 수 있지만 사용자가 텍스트 상자를 두 번 클릭하면 상태가 사용 가능으로 변경되고 사용자가 텍스트 상자를 편집 할 수 있습니다. 하지만 텍스트 상자가 활성화 된 후 무언가를 입력하면 방아쇠 때문에 매초마다 삭제됩니다 (아마도 UI가 업데이트 중이며 방아쇠가 함께 있습니다). 코드를 사용하고 더블 클릭 후 바인딩을 지우면 잘 동작합니다. 하지만 코드를 통해이 작업을 수행하고 싶지는 않습니다. XAML을 작동시키기 위해 약간의 기능이 누락되었습니다.XAML을 사용하여 바인딩 지우기

이 내 현재 XAML입니다 :

<Style.Triggers> 

    <Trigger Property="TextBox.IsEnabled" Value="False"> 

     <Setter Property="Text" Value="{Binding some binding}"/> 

    </Trigger> 

    <Trigger Property="TextBox.IsEnabled" Value="True"> 

     <Setter Property="Text" Value="{x:Null}"/> 

    </Trigger> 

</Style.Triggers> 

감사합니다!

답변

2

바인딩을 설정하고 방향을 OneWayToSource로 변경하는 것이 도움이 되겠습니까?

<Style.Triggers> 

    <Trigger Property="TextBox.IsEnabled" Value="False"> 
     <Setter Property="Text" Value="{Binding someBinding}"/> 
    </Trigger> 

    <Trigger Property="TextBox.IsEnabled" Value="True"> 
     <Setter Property="Text" Value="{Binding Path=someBinding, Mode=OneWayToSource}"/> 
    </Trigger> 

</Style.Triggers> 
+0

감사합니다. –

관련 문제