Binding.Path 속성

정의

바인딩 소스 속성의 경로를 가져오거나 설정합니다.

public:
 property System::Windows::PropertyPath ^ Path { System::Windows::PropertyPath ^ get(); void set(System::Windows::PropertyPath ^ value); };
public System.Windows.PropertyPath Path { get; set; }
member this.Path : System.Windows.PropertyPath with get, set
Public Property Path As PropertyPath

속성 값

PropertyPath

바인딩 소스의 경로입니다. 기본값은 null입니다.

예제

다음 예제에서는 만든 스타일 트리거는 ToolTip 유효성 검사 오류 메시지를 보고 하는 합니다. Setter 값 현재 오류 콘텐츠에 바인딩합니다 TextBox (합니다 TextBox 스타일을 사용 하)를 사용 하 여는 RelativeSource 속성입니다. 이 예제에 대 한 자세한 내용은 참조 하세요. 방법: 바인딩 유효성 검사 구현합니다.

<Style x:Key="textBoxInError" TargetType="{x:Type TextBox}">
  <Style.Triggers>
    <Trigger Property="Validation.HasError" Value="true">
      <Setter Property="ToolTip"
        Value="{Binding RelativeSource={x:Static RelativeSource.Self},
                        Path=(Validation.Errors)/ErrorContent}"/>
    </Trigger>
  </Style.Triggers>
</Style>

설명

각 바인딩에는 일반적으로 바인딩 대상 개체, 대상 속성, 바인딩 원본 및 사용할 바인딩 소스의 값에 대한 경로의 네 가지 구성 요소가 있습니다. 이러한 데이터 바인딩 개념에 대한 자세한 내용은 데이터 바인딩 개요를 참조하세요.

Path 속성을 사용하여 바인딩할 원본 값을 지정합니다.

  • 가장 간단한 경우는 Path 속성 값이 Path=PropertyName과 같이 바인딩에 사용할 원본 개체의 속성 이름인 경우입니다.

  • 속성의 하위 속성은 C#에서 사용되는 구문과 유사한 구문으로 지정할 수 있습니다. 예를 들어 Path=ShoppingCart.Order 절은 개체 또는 속성 ShoppingCart의 하위 속성 Order에 대한 바인딩을 설정합니다.

  • 연결된 속성에 바인딩하려면 연결된 속성을 괄호로 묶습니다. 예를 들어 연결된 속성 DockPanel.Dock에 바인딩하려면 구문은 Path=(DockPanel.Dock)입니다.

  • 속성의 인덱서는 인덱서가 적용되는 속성 이름 뒤에 대괄호로 묶어서 지정할 수 있습니다. 예를 들어 Path=ShoppingCart[0] 절은 속성의 내부 인덱싱에서 리터럴 문자열 "0"을 처리하는 방법에 해당하는 인덱스에 대한 바인딩을 설정합니다. 여러 인덱서도 지원됩니다.

  • Path=ShoppingCart.ShippingInfo[MailingAddress,Street].와 같이 Path 절에서 인덱서와 하위 속성을 혼합할 수 있습니다.

  • 여러 인덱서 매개 변수를 쉼표(,)로 구분하여 인덱서 안에 포함할 수 있습니다. 각 매개 변수의 형식은 괄호를 사용하여 지정할 수 있습니다. 예를 들어 Path="[(sys:Int32)42,(sys:Int32)24]"를 사용할 수 있으며 여기서 sysSystem 네임스페이스에 매핑됩니다.

  • 소스가 컬렉션 뷰인 경우 슬래시(/)를 사용하여 현재 항목을 지정할 수 있습니다. 예를 들어 Path=/ 절은 뷰의 현재 항목에 대한 바인딩을 설정합니다. 소스가 컬렉션인 경우 이 구문은 기본 컬렉션 뷰의 현재 항목을 지정합니다.

  • 속성 이름과 슬래시를 결합하여 컬렉션인 속성을 트래버스할 수 있습니다. 예를 들어 Path=/Offices/ManagerName은 소스 컬렉션의 현재 항목을 지정하며 여기에는 컬렉션인 Offices 속성이 포함됩니다. 현재 항목은 ManagerName 속성을 포함하는 개체입니다.

  • 필요에 따라 마침표(.) 경로를 사용하여 현재 소스에 바인딩할 수 있습니다. 예를 들어 Text="{Binding}"Text="{Binding Path=.}"와 같습니다.

경로 구문에 대한 자세한 내용은 바인딩 선언 개요 또는 PropertyPath XAML 구문을 참조하세요.

XML 바인딩의 경우 속성을 참조하세요 XPath .

전체 개체에 바인딩하려면 속성을 지정할 Path 필요가 없습니다. 자세한 내용은 데이터 바인딩 개요에서 "값 경로 지정"을 참조하세요.

적용 대상