728x90
반응형
728x170
▶ MainPage.xaml
<Page x:Class="TestProject.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<Grid.Background>
<SolidColorBrush x:Name="gridBackgroundBrush" />
</Grid.Background>
<TextBlock
HorizontalAlignment="Center"
VerticalAlignment="Center"
FontFamily="나눔고딕코딩"
FontSize="96"
FontWeight="Bold"
Text="안녕하세요">
<TextBlock.Foreground>
<SolidColorBrush x:Name="textBlockBackgroundBrush" />
</TextBlock.Foreground>
</TextBlock>
</Grid>
</Page>
728x90
▶ MainPage.xaml.cs
using Windows.UI;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Media;
namespace TestProject
{
/// <summary>
/// 메인 페이지
/// </summary>
public sealed partial class MainPage : Page
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Constructor
////////////////////////////////////////////////////////////////////////////////////////// Public
#region 생성자 - MainPage()
/// <summary>
/// 생성자
/// </summary>
public MainPage()
{
InitializeComponent();
CompositionTarget.Rendering += CompositionTarget_Rendering;
}
#endregion
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Private
#region 구성 타겟 렌더링시 처리하기 - CompositionTarget_Rendering(sender, e)
/// <summary>
/// 구성 타겟 렌더링시 처리하기
/// </summary>
/// <param name="sender">이벤트 발생자</param>
/// <param name="e">이벤트 인자</param>
private void CompositionTarget_Rendering(object sender, object e)
{
RenderingEventArgs renderingEventArgs = e as RenderingEventArgs;
double t = (0.25 * renderingEventArgs.RenderingTime.TotalSeconds) % 1;
t = t < 0.5 ? 2 * t : 2 - 2 * t;
// 배경색
byte backgroundGrayscale = (byte)(255 * t);
this.gridBackgroundBrush.Color = Color.FromArgb(255, backgroundGrayscale, backgroundGrayscale, backgroundGrayscale);
// 전경색
byte foregroundGrayscale = (byte)(255 - backgroundGrayscale);
this.textBlockBackgroundBrush.Color = Color.FromArgb(255, foregroundGrayscale, foregroundGrayscale, foregroundGrayscale);
}
#endregion
}
}
728x90
반응형
그리드형(광고전용)
'C# > UWP' 카테고리의 다른 글
[C#/UWP] StackPanel 클래스 사용하기 (0) | 2019.02.27 |
---|---|
[C#/UWP] Ellipse 클래스 사용하기 (0) | 2019.02.27 |
[C#/UWP] Border 클래스 사용하기 (0) | 2019.02.27 |
[C#/UWP] Border 클래스 사용하기 (0) | 2019.02.27 |
[C#/UWP] CompositionTarget 클래스 : Rendering 정적 이벤트 사용하기 (0) | 2019.02.22 |
[C#/UWP] CompositionTarget 클래스 : Rendering 정적 이벤트 사용하기 (0) | 2019.02.22 |
[C#/UWP] CompositionTarget 클래스 : Rendering 정적 이벤트 사용하기 (0) | 2019.02.22 |
[C#/UWP] CompositionTarget 클래스 : Rendering 정적 이벤트 사용하기 (0) | 2019.02.22 |
[C#/UWP] DispatcherTimer 클래스 : Tick 이벤트 사용하기 (0) | 2019.02.22 |
[C#/UWP] Binding 태그 확장 : ElementName 속성을 사용해 엘리먼트 바인딩 하기 (0) | 2019.02.08 |
[C#/UWP] DisplayInformation 클래스 : OrientationChanged 이벤트 사용하기 (0) | 2019.02.08 |
댓글을 달아 주세요