퇴근5분전

1. 프로젝트 생성 후 새항목 추가로 사용자 정의 컨트롤(WPF) 를 선택 후 컨트롤을 하나 생성 후 정의 함.
2. 윈도우.xaml에  정의컨트롤의 네임스페이스 추가!
   xmlns:my="clr-namespace:사용자정의컨트롤에네임스페이스명"
3. <my:컨트롤명 /> 으로 윈도우.xaml에 컨트롤 추가!!

유저컨트롤.xaml
<UserControl x:Class="WpfApplication1.UserControl1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Height="300" Width="300">
    <Grid>
        <Button Margin="31,28,47,50" Name="button1" Click="button1_Click">Button</Button>
        <Button Height="44" Margin="68,59,90,0" Name="button2" VerticalAlignment="Top" Click="button2_Click">Button</Button>
    </Grid>
</UserControl>

윈도우.xaml
<Window x:Class="WpfApplication1.Window2"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:my="clr-namespace:WpfApplication1"
    Title="Window2" Height="431" Width="503" RenderTransformOrigin="20,180">
    <Grid Height="393" Name="grid1" Width="487">
        <Button Height="44" Margin="12,12,12,0" Name="button1" VerticalAlignment="Top" Opacity="0.2" BorderThickness="1" Click="button1_Click">Button</Button>
        <Rectangle Margin="12,0,0,8.5" Name="rectangle1" Stroke="Black" Opacity="0.5" HorizontalAlignment="Left" Width="150" Height="302.692" VerticalAlignment="Bottom" />       
        <my:UserControl1 Margin="175.875,81.808,18.125,12.789"></my:UserControl1>
    </Grid>
</Window>

** 위에 동일한 색으로 표시해두었음.
    윈폼 작업처럼 도구상자에 안나타남. 위와같이 일일이 쳐야 하는지??? 의문임...

컨트롤을 등록 시 Window와 같은 네임스페이스에 포함되므로 닷넷 프레임워크에서 제공하는 기본 어셈블리에서 클래스를 찾으려 하므로 이와 구별하기위해 아래 네임스페이스를 따로 작성한다.

xmlns:my="clr-namespace:WpfApplication1" 


이는 런타임상에서 해당 클래스를 올바르게 찾을수 있도록 네임스페이스값을 명시해 준다.


- 출처 : .Net 3.5 차세대 개발 프로그래밍 -  책에서 일부 정리 함. ( 저작권 문제시 삭제 할 것임. )
          자세한 내용은 책을 통해 확인하시길...




'# 3) .Net ( Vs 2008 ) > WPF' 카테고리의 다른 글

스타일  (0) 2009.12.26
리소스  (0) 2009.12.26
레이아웃 컨트롤  (0) 2009.12.26
WPF 응용프로그램 기초  (0) 2009.12.26
WPF 기초...  (0) 2009.12.26