{} 이스케이프 시퀀스 / 태그 확장
업데이트: 2007년 11월
특성 값에 대한 XAML 이스케이프 시퀀스를 제공합니다. 특성 값에서 이스케이프 시퀀스 다음에 오는 값은 리터럴로 해석됩니다.
XAML 특성 사용
<object property="{}literalValue" .../>
XAML 속성 요소 사용
<object>
<object.property>
{}literalValue
</object.property>
</object>
XAML 값
literalValue |
이스케이프 처리할 리터럴 문자열입니다. |
설명
{} 이스케이프 시퀀스는 특성 구문에서 태그 확장에 사용되는 { 및 } 문자를 이스케이프 처리하는 데 사용됩니다. 엄밀하게 말해서 이 이스케이프 시퀀스 자체는 태그 확장이 아니며 클래스에 기반하지 않습니다. XAML의 다른 모든 태그 확장에서는 특성 값이 리터럴이나 처리기 참조가 되지 않도록 처리를 이스케이프하기 위해 XAML 프로세서 구현에서 인식되는 { 및 } 문자를 사용합니다. 중괄호 두 개가 인접한 경우에만 이스케이프 시퀀스로 처리됩니다. 자세한 내용은 태그 확장 및 XAML을 참조하십시오.
{ 리터럴 문자를 값의 첫 번째 문자로 설정하려는 경우 이러한 이스케이프 시퀀스가 유용합니다.
큰따옴표 문자(")는 이런 방식으로 이스케이프 처리할 수 없습니다. 콘텐츠가 아닌 속성에서 큰따옴표 문자를 속성 값으로 설정해야 한다면 속성 요소 구문을 사용하여 속성 요소 내부에 큰따옴표를 문자열로 배치하거나 XML 문자 엔터티를 사용합니다. 콘텐츠 속성의 경우에는 큰따옴표가 전체 콘텐츠가 될 수 있습니다.
{} 이스케이프 시퀀스는 대개 XAML 태그 확장이 나타나는 위치에 네임스페이스 한정자를 포함해야 하는 XML 형식을 지정하는 경우 필요합니다. XAML 특성 값이 시작되는 곳이나 태그 확장 내에서 등호 기호 바로 뒤를 예로 들 수 있습니다. 다음 예제에서는 XAML 특성 값이 시작되는 곳에 나타나는 XML 네임스페이스에 대한 이스케이프를 보여 줍니다.
<StackPanel Name="stacky">
<StackPanel.Resources>
<DataTemplate DataType="{}{http://planetsNS}Planet" >
<StackPanel Orientation="Horizontal">
<TextBlock Width="100" Text="{Binding Path=Element[{http://planetsNS}DiameterKM].Value}" />
<TextBlock Width="100" Text="{Binding Path=Attribute[Name].Value}" />
<TextBlock Text="{Binding Path=Element[{http://planetsNS}Details].Value}" />
</StackPanel>
</DataTemplate>
</StackPanel.Resources>