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"
xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"
FontFamily="나눔고딕코딩"
FontSize="16">
<Grid>
<Grid
HorizontalAlignment="Center"
VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="50" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Border Name="border" Grid.Column="0"
BorderThickness="2"
BorderBrush="#ffffd700"
Background="#ffffffff">
<TextBlock
Margin="10"
FontSize="18"
Foreground="Black"
Text="테두리 내 텍스트" />
</Border>
<StackPanel Grid.Column="2">
<Slider Header="테두리 두께"
IsFocusEngagementEnabled="False"
Minimum="0"
Maximum="10"
StepFrequency="1"
ValueChanged="borderThicknessSlider_ValueChanged"
Value="2" />
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<muxc:RadioButtons Grid.Column="0"
Header="배경 색상">
<RadioButton
GroupName="BackgroundColor"
Content="녹색"
Checked="backgroundColorRadioButton_Checked" />
<RadioButton
GroupName="BackgroundColor"
Content="노란색"
Checked="backgroundColorRadioButton_Checked" />
<RadioButton
GroupName="BackgroundColor"
Content="파란색"
Checked="backgroundColorRadioButton_Checked" />
<RadioButton
GroupName="BackgroundColor"
Content="흰색"
Checked="backgroundColorRadioButton_Checked"
IsChecked="True" />
</muxc:RadioButtons>
<muxc:RadioButtons Grid.Column="1"
Header="테두리 색상">
<RadioButton
GroupName="BorderBrush"
Content="녹색"
Checked="borderColorRadioButton_Checked" />
<RadioButton
GroupName="BorderBrush"
Content="노란색"
Checked="borderColorRadioButton_Checked"
IsChecked="True" />
<RadioButton
GroupName="BorderBrush"
Content="파란색"
Checked="borderColorRadioButton_Checked" />
<RadioButton
GroupName="BorderBrush"
Content="흰색"
Checked="borderColorRadioButton_Checked" />
</muxc:RadioButtons>
</Grid>
</StackPanel>
</Grid>
</Grid>
</Page>
728x90
▶ MainPage.xaml.cs
using Windows.Foundation;
using Windows.Graphics.Display;
using Windows.UI;
using Windows.UI.ViewManagement;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Media;
namespace TestProject
{
/// <summary>
/// 메인 페이지
/// </summary>
public sealed partial class MainPage : Page
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Constructor
////////////////////////////////////////////////////////////////////////////////////////// Public
#region 생성자 - MainPage()
/// <summary>
/// 생성자
/// </summary>
public MainPage()
{
InitializeComponent();
#region 윈도우 크기를 설정한다.
double width = 800d;
double height = 600d;
double dpi = (double)DisplayInformation.GetForCurrentView().LogicalDpi;
ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;
Size windowSize = new Size(width * 96d / dpi, height * 96d / dpi);
ApplicationView.PreferredLaunchViewSize = windowSize;
Window.Current.Activate();
ApplicationView.GetForCurrentView().TryResizeView(windowSize);
#endregion
#region 윈도우 제목을 설정한다.
ApplicationView.GetForCurrentView().Title = "Border 엘리먼트 사용하기";
#endregion
}
#endregion
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Private
#region 테두리 두께 슬라이더 값 변경시 처리하기 - borderThicknessSlider_ValueChanged(sender, e)
/// <summary>
/// 테두리 두께 슬라이더 값 변경시 처리하기
/// </summary>
/// <param name="sender">이벤트 발생자</param>
/// <param name="e">이벤트 인자</param>
private void borderThicknessSlider_ValueChanged(object sender, RangeBaseValueChangedEventArgs e)
{
if(this.border != null)
{
this.border.BorderThickness = new Thickness(e.NewValue);
}
}
#endregion
#region 배경색 라디오 버튼 체크시 처리하기 - backgroundColorRadioButton_Checked(sender, e)
/// <summary>
/// 배경색 라디오 버튼 체크시 처리하기
/// </summary>
/// <param name="sender">이벤트 발생자</param>
/// <param name="e">이벤트 인자</param>
private void backgroundColorRadioButton_Checked(object sender, RoutedEventArgs e)
{
if(sender is RadioButton radioButton && this.border != null)
{
string colorName = radioButton.Content.ToString();
switch(colorName)
{
case "녹색" : this.border.Background = new SolidColorBrush(Colors.Green ); break;
case "노란색" : this.border.Background = new SolidColorBrush(Colors.Yellow); break;
case "파란색" : this.border.Background = new SolidColorBrush(Colors.Blue ); break;
case "흰색" : this.border.Background = new SolidColorBrush(Colors.White ); break;
}
}
}
#endregion
#region 테두리 색상 라디오 버튼 체크시 처리하기 - borderColorRadioButton_Checked(sender, e)
/// <summary>
/// 테두리 색상 라디오 버튼 체크시 처리하기
/// </summary>
/// <param name="sender">이벤트 발생자</param>
/// <param name="e">이벤트 인자</param>
private void borderColorRadioButton_Checked(object sender, RoutedEventArgs e)
{
if(sender is RadioButton radioBurron && this.border != null)
{
string colorName = radioBurron.Content.ToString();
switch(colorName)
{
case "녹색" : this.border.BorderBrush = new SolidColorBrush(Colors.DarkGreen); break;
case "노란색" : this.border.BorderBrush = new SolidColorBrush(Colors.Gold ); break;
case "파란색" : this.border.BorderBrush = new SolidColorBrush(Colors.DarkBlue ); break;
case "흰색" : this.border.BorderBrush = new SolidColorBrush(Colors.White ); break;
}
}
}
#endregion
}
}
728x90
그리드형(광고전용)
'C# > UWP' 카테고리의 다른 글
[C#/UWP] ItemsRepeater 엘리먼트 : 중첩 레이아웃 사용하기 (0) | 2021.06.29 |
---|---|
[C#/UWP] ItemsRepeater 엘리먼트 : ItemsSource 속성을 사용해 혼합 타입 컬렉션 사용하기 (0) | 2021.06.29 |
[C#/UWP] ItemsRepeater 엘리먼트 : Layout 속성을 사용해 커스텀 가상화 레이아웃 사용하기 (0) | 2021.06.29 |
[C#/UWP] ItemsRepeater 엘리먼트 사용하기 (0) | 2021.06.29 |
[C#/UWP] Canvas 엘리먼트 사용하기 (0) | 2021.06.28 |
[C#/UWP] SymbolIconSource 엘리먼트 사용하기 (0) | 2021.06.26 |
[C#/UWP] Hyperlink 엘리먼트 : NavigateUri 속성을 사용해 설정 앱의 색 섹션 표시하기 (0) | 2021.06.26 |
[C#/UWP] TeachingTip 엘리먼트 : HeroContent/Content 속성 사용하기 (0) | 2021.06.25 |
[C#/UWP] TeachingTip 엘리먼트 : Target 속성 설정없이 사용하기 (0) | 2021.06.25 |
[C#/UWP] TeachingTip 엘리먼트 : Target 속성 사용하기 (0) | 2021.06.25 |