Share via


방법: 두 컨트롤의 속성 바인딩

업데이트: 2007년 11월

이 예제에서는 ElementName 속성을 사용하여 한 인스턴스화된 컨트롤의 속성을 다른 인스턴스화된 컨트롤의 속성에 바인딩하는 방법을 보여 줍니다.

예제

다음 예제에서는 CanvasBackground 속성을 ComboBoxSelectedItem.Content 속성에 바인딩하는 방법을 보여 줍니다.

<Window
  xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
  Width="460" Height="200"
  Title="Binding the Properties of Two Controls">

  <Window.Resources>
    <Style TargetType="TextBlock">
      <Setter Property="FontSize" Value="16"/>
      <Setter Property="FontWeight" Value="Bold"/>
      <Setter Property="DockPanel.Dock" Value="Top"/>
      <Setter Property="HorizontalAlignment" Value="Center"/>
    </Style>
    <Style TargetType="Canvas">
      <Setter Property="Height" Value="50"/>
      <Setter Property="Width" Value="50"/>
      <Setter Property="Margin" Value="8"/>
      <Setter Property="DockPanel.Dock" Value="Top"/>
    </Style>
    <Style TargetType="ComboBox">
      <Setter Property="Width" Value="150"/>
      <Setter Property="Margin" Value="8"/>
      <Setter Property="DockPanel.Dock" Value="Top"/>
    </Style>
  </Window.Resources>

  <Border Margin="10" BorderBrush="Silver" BorderThickness="3" Padding="8">
    <DockPanel>
      <TextBlock>Choose a Color:</TextBlock>
      <ComboBox Name="myComboBox" SelectedIndex="0">
        <ComboBoxItem>Green</ComboBoxItem>
        <ComboBoxItem>Blue</ComboBoxItem>
        <ComboBoxItem>Red</ComboBoxItem>
      </ComboBox>
      <Canvas>
        <Canvas.Background>
          <Binding ElementName="myComboBox" Path="SelectedItem.Content"/>
        </Canvas.Background>
      </Canvas>
    </DockPanel>
  </Border>
</Window>

이 예제가 렌더링되면 다음과 유사합니다.

녹색 배경의 캔버스

전체 샘플을 보려면 UI 요소 속성 바인딩 샘플을 참조하십시오.

참고   바인딩 대상 속성(이 예제에서는 Background 속성)은 종속성 속성이어야 합니다. 자세한 내용은 데이터 바인딩 개요를 참조하십시오.

참고 항목

작업

방법: 바인딩 소스 지정

기타 리소스

데이터 바인딩 샘플

데이터 바인딩 방법 항목