2021년 11월 21일 일요일

WPF교육동영상,x:Static, Source를 통한 데이터 바인딩(DateTimeFormatInfo를 이용한 요일정보를 ListBox, TextBlock에 바인딩), WPF학원

 

 WPF교육동영상,x:Static, Source를 통한 데이터 바인딩(DateTimeFormatInfo를 이용한 요일정보를 ListBox, TextBlock에 바인딩), WPF학원

http://ojc.asia/bbs/board.php?bo_table=WPF&wr_id=169 


WPF교육동영상,x:Static, Source를 통한 데이터 바인딩(DateTimeFormatInfo를 이용한 요일정보를 ListBox, TextB

WPF교육동영상,x:Static, Source를 통한 데이터 바인딩(DateTimeFormatInfo를 이용한 요일정보를 ListBox, TextBlock에 바인딩)ElementName으로 바인딩의 소스를 명시하는 것 대신 Binding 클래스의 Source 프로퍼티를

ojc.asia


https://www.youtube.com/watch?v=8EA-LXKJpkI&list=PLxU-iZCqT52Cmj47aKB1T-SxI33YL7rYS&index=12 

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

  • ElementName으로 바인딩의 소스를 명시하는 것 대신 Binding 클래스의 Source 프로퍼티를 사용하여 바인딩 하는 것이 가능한데 Source 프로퍼티는 객체를 참조하고 Path는 객체의 프로퍼티를 참조한다.
  • Source를 사용하기 위한 한 가지 방법은 x:Static 마크업을 확장해야 되는데 x:Static은 XAML에서 클래스 내의 정적필드나 프로퍼티를 참조할 수 있게 한다.
  • System.Globalization 네임스페이스에 있는 DateTimeFormatInfo 클래스의 DayName 프로퍼티는 요일에 해당하는 문자열 배열을 반환하는 인스턴스 프로퍼티다. DateTimeFormatInfo 클래스는 두 개의 정적 프로퍼티를 제공하는데 InvariantInfo는 변함 없는 문화권을 지원하며 CurrentInfo는 사용자 자신의 현재 문화권을 지원한다.

C#에서는 다음과 같이 요일에 해당하는 문자열 배열을 현재 사용자의 문화권으로 지정한다.

string[] dayNames = DateTimeFormatInfo.CurrentInfo.DayNames;

  • MainWindow.xaml

<Window x:Class="DayNames.MainWindow"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        xmlns:g="clr-namespace:System.Globalization;assembly=mscorlib"

        Title="MainWindow" Height="350" Width="525">

    <StackPanel>


        <!-- 한번만 바인딩 -->

        <ListBox Name="lstbox"

             HorizontalAlignment="Center"

             Margin="24"

             ItemsSource="{Binding 

                            Source={x:Static g:DateTimeFormatInfo.CurrentInfo},

                            Path=DayNames,

                            Mode=OneTime}" />


       <!-- 리스트박스의 SelectedItem 속성과 TextBlock의 Text속성을 바인딩 -->

        <TextBlock HorizontalAlignment="Center"

               Text="{Binding ElementName=lstbox, 

                                    Path=SelectedItem, Mode=OneWay}" />

    </StackPanel>

</Window>


  • 실행결과



#x:Static, #WPF데이터컨텍스트#데이터컨텍스트#WPF데이터바인딩#WPF교육#WPF강좌#WPF학원#DataBinding#WPFDataBinding

x:Static,WPF데이터컨텍스트, 데이터컨텍스트,데이터바인딩, WPF데이터바인딩, WPF교육, WPF강좌, WPF학원, DataBinding, WPFDataBinding

댓글 없음:

댓글 쓰기

(C#교육동영상)C# ADO.NET 실습 ODP.NET/ODAC 설치 오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원

  (C#교육동영상)C# ADO.NET 실습  ODP.NET/ODAC 설치  오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원 https://www.youtube.com/watch?v=qIPU85yAlzc&list=PLxU-i...