WPF동영상, WPF학원교육, WPF데이터바인딩, TwoWay DataBinding 실습
https://www.youtube.com/watch?v=2iD0UZBuWgs&list=PLxU-iZCqT52Cmj47aKB1T-SxI33YL7rYS&index=3

https://www.youtube.com/watch?v=A0atwgTrcjY&list=PLxU-iZCqT52Cmj47aKB1T-SxI33YL7rYS&index=11&t=1s

- 양방향 바인딩은 한쪽만 Binding 절을 사용 후 UpdateSourceTrigger 속성(옵션)을 기술(기본적으로 양방향을 지원, 가능하다면 양방향 지원한다.)해서 구현하거나 소스, 타겟 양쪽 모두에 Binding 절을 사용해서 양방향 소스로 사용하도록 해서 구현할 수 있다.
- UpdateSourceTrigger 열거형 : 데이터 바인딩 소스의 업데이트의 타이밍을 설정.
- Default : 대부분의 의존 속성에 대한 기본값이 PropertyChanged인 반면 Text 속성의 기본값은 LostFocus 이다.
- Explicit : UpdateSource 메서드를 호출하는 경우에만 바인딩 소스를 업데이트.
- LostFocus : 포커스를 잃을 때 바인딩 소스를 업데이트.
- PropertyChanged : 바인딩 대상 속성이 변경될 때마다 즉시 바인딩 소스를 업데이트.
- MainWindow.xaml
<Window x:Class="WpfApplication9.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Grid>
<TextBox Height="23" HorizontalAlignment="Left"
Margin="230,41,0,0" Name="textBox1" VerticalAlignment="Top"
Width="120" Text="{Binding ElementName=textBox2,
Path=Text, Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged}" />
<TextBox Height="23" HorizontalAlignment="Left"
Margin="230,98,0,0" Name="textBox2" VerticalAlignment="Top"
Width="120" />
</Grid>
</Window>
- MainWindow.xaml
<Window x:Class="WpfApplication9.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="500" Width="500">
<Grid>
<TextBox Height="23" HorizontalAlignment="Left"
Margin="230,41,0,0" Name="textBox1" VerticalAlignment="Top"
Width="120" Text="{Binding ElementName=textBox2,
Path=Text,Mode=TwoWay}" />
<TextBox Height="23" HorizontalAlignment="Left"
Margin="230,98,0,0" Name="textBox2" VerticalAlignment="Top"
Width="120"
Text="{Binding ElementName=textBox1,
Path=Text,Mode=TwoWay}"/>
</Grid>
</Window>
댓글 없음:
댓글 쓰기