블로그 이미지
Magic_kit
study 관련자료를 한곳으로 자기 개발 목적으로 재태크 재무 관리 목적으로 일상생활의 팁을 공유 하기 위하여 블로그를 개설 하였습니다.

calendar

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
반응형

Category

Recent Post

Recent Comment

Archive

2009. 12. 3. 09:35 .Net Project/SilverLight 3.0
반응형
  Grid.Resource
- 데이터 바인딩 기본적으로 사용하는 Grid 컨트롤
- 바인딩은 실버라이트 버젼이 올라갈수능 기능이 강화되고 있으므로, 충분히 익히고 사용할 
  가치가 있습니다.
- 바인딩을 적용하고자 하는 컨트롤은 파생되어야 하며, 바인딩 적용하고 하는 컨트롤의 프로퍼티는
   엔터티로 적용 되어야 사용 가능합니다.
  Grid.Resource.Xaml

<UserControl x:Class="RiaResource.MainPage"

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

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

    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

    mc:Ignorable="d"

    d:DesignHeight="300" d:DesignWidth="400">

 

    <Grid x:Name="LayoutRoot" Background="White">

        <Grid.Resources>

            <SolidColorBrush x:Key="myColor"
                             
 Color="Red" Opacity="0.8"></SolidColorBrush>

        </Grid.Resources>

        <StackPanel>

            <TextBlock Text="Kim Yong Won"
                       Foreground
="Blue" FontSize="20"></TextBlock>

            <TextBlock Text="Red Color"
                     
 Foreground="{StaticResource myColor}"
                       FontSize
="20"></TextBlock>

            <TextBlock Text="Red Color"
                       Foreground="{StaticResource myColor}" 
                       FontSize
="20"></TextBlock>

        </StackPanel>

    </Grid>

</UserControl> 

  다음과 같은 위의 바인딩 내용을 외부에서 적용하기


1. FrmMergeResourceDictionar.Xaml 생성하여 다음 코드 추가

<ResourceDictionary 

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

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

    <SolidColorBrush Color="Red" x:Key="myRed"></SolidColorBrush>

    <SolidColorBrush Color="Blue" x:Key="myBlue"></SolidColorBrush>   

</ResourceDictionary> 

2. FrmMain 페이지에서 리소스파일을 외부에서 가져와서 사용하기 위하여 추가 

<UserControl x:Class="RiaResource.SilverlightControl1"

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

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

    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

    mc:Ignorable="d"

    d:DesignHeight="300" d:DesignWidth="400">

   

    <UserControl.Resources>

        <ResourceDictionary>

            <ResourceDictionary.MergedDictionaries>

                <ResourceDictionary
                 Source
="FrmMergeResourceDictionar.xaml"></ResourceDictionary>

            </ResourceDictionary.MergedDictionaries>

        </ResourceDictionary>

    </UserControl.Resources>

   

    <StackPanel>

        <TextBlock Text="RedColor"
                  
 Foreground="{StaticResource myRed}"></TextBlock>

        <TextBlock Text="BlueColor"
                 
 Foreground="{StaticResource myBlue}"></TextBlock>

    </StackPanel>   

</UserControl>

  3. 비하인드 코드에서 리소스 적용하는 방법

using System;

using System.Collections.Generic;

using System.Linq;

using System.Net;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Animation;

using System.Windows.Shapes;

 

namespace RiaResource

{

    public partial class SilverlightControl2 : UserControl

    {

        public SilverlightControl2()

        {

            InitializeComponent();

 

            this.Loaded += new RoutedEventHandler(SilverlightControl2_Loaded);

        }

 

        void SilverlightControl2_Loaded(object sender, RoutedEventArgs e)

        {

            //[1] Grid 리소스 사용 하는 방법

            this.lblRed.Foreground = 
                      (
this.LayoutRoot.Resources["myColor"] as SolidColorBrush);

 

            //[2] 외부에 정의된 리소스 사용하기

            this.lblGreen.Foreground =
                     
this.Resources["myGreen"] as SolidColorBrush ;   

        }

    }

} 






반응형

'.Net Project > SilverLight 3.0' 카테고리의 다른 글

56장 스타일 탬블릿 적용(Templet)  (0) 2009.12.03
55장 스타일 사용 컨트롤 조작(Style)  (0) 2009.12.03
53장 Calendar 컨트롤  (0) 2009.12.02
52장 Tab 컨트롤  (0) 2009.12.02
51장 Slider 컨트롤  (0) 2009.12.02
posted by Magic_kit