Binding.Path 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
바인딩 소스 속성의 경로를 가져오거나 설정합니다.
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
속성 값
바인딩 소스의 경로입니다. 기본값은 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]"
를 사용할 수 있으며 여기서sys
는System
네임스페이스에 매핑됩니다.소스가 컬렉션 뷰인 경우 슬래시(/)를 사용하여 현재 항목을 지정할 수 있습니다. 예를 들어
Path=/
절은 뷰의 현재 항목에 대한 바인딩을 설정합니다. 소스가 컬렉션인 경우 이 구문은 기본 컬렉션 뷰의 현재 항목을 지정합니다.속성 이름과 슬래시를 결합하여 컬렉션인 속성을 트래버스할 수 있습니다. 예를 들어
Path=/Offices/ManagerName
은 소스 컬렉션의 현재 항목을 지정하며 여기에는 컬렉션인Offices
속성이 포함됩니다. 현재 항목은ManagerName
속성을 포함하는 개체입니다.필요에 따라 마침표(.) 경로를 사용하여 현재 소스에 바인딩할 수 있습니다. 예를 들어
Text="{Binding}"
는Text="{Binding Path=.}"
와 같습니다.
경로 구문에 대한 자세한 내용은 바인딩 선언 개요 또는 PropertyPath XAML 구문을 참조하세요.
XML 바인딩의 경우 속성을 참조하세요 XPath .
전체 개체에 바인딩하려면 속성을 지정할 Path 필요가 없습니다. 자세한 내용은 데이터 바인딩 개요에서 "값 경로 지정"을 참조하세요.