Расширения разметки, способ включения процедурного программирования в XAML? - PullRequest
0 голосов
/ 04 января 2012

Можно ли сказать, что расширения разметки являются способом включения процедурного программирования в XAML?Как вы думаете, что ограничивает это утверждение?

Например, если вы сравниваете его в чистом XML, расширения разметки в некотором смысле похожи на "элементы действия", они не совсем являются частью дерева объектов.

Ответы [ 2 ]

0 голосов
/ 04 января 2012

Некоторые расширения разметки - это просто более удобный способ описания того, что можно сделать путем более широкого использования тегов (поэтому их использование декларативно, как ад):

<TextBox Text="{Binding Path=Foo}">

эквивалентно

<TextBox>
  <TextBox.Text>
   <Binding Path="Foo">
  </TextBox.Text>
</TextBox>

Что касается расширений в целом ... см. здесь .{} -Syntax просто предписывает компилятору использовать экземпляр соответствующего типа расширения для обработки промежуточного кода.Это, конечно, объектно-ориентированный код, который никогда не бывает процедурным.Хотите верьте, хотите нет - даже люди в M $ знают, как правильно писать!

0 голосов
/ 04 января 2012

Нет, это чисто декларативно.Это никоим образом не является процедурным.

...