Почему файл WPF / Silerlight XAML может анализироваться без пространства имен по умолчанию? - PullRequest
0 голосов
/ 12 февраля 2009

Я прочитал, что "пространство имен по умолчанию важно, потому что иначе синтаксический анализатор XAML не будет распознавать элементы".

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

<UserControl x:Class="Second12.Page"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Width="400" Height="300">
    <Grid x:Name="LayoutRoot" Background="White">
        <TextBlock Text="This is a test."/>
    </Grid>
</UserControl>

Почему это?

Ответы [ 2 ]

1 голос
/ 12 февраля 2009

Я бы посоветовал парсеру Silverlight вернуться к синтаксическому анализу WPF silverlight по умолчанию.

вы получите ошибки, если используете wf xaml или даже WPF xaml, не поддерживаемый анализатором Silverlight.

Я бы посмотрел на важность дальнейшего продвижения пространства имен.

XAML - это язык, поддерживаемый в настоящее время WPF, Silverlight, который использует подмножество WPF и WF и немного в WCF. у каждого из них есть свои парсеры прямо сейчас.

В .net 4.0 будет файл system.xaml.dll или что-то в этом роде. Пространство имен будет значить немного больше, так как будет направлять синтаксический анализатор дальше. WPF, WF и WCF будут использовать этот синтаксический анализатор и предположат, что Silverlight в будущем будет его использовать.

edit, в первую очередь пространства имен верхнего уровня используются для предоставления схемы intellisense так, как синтаксический анализатор записывается для каждой группы.

1 голос
/ 12 февраля 2009

Возможно, в предложении следовало бы читать "не должен признавать". Для синтаксического анализатора XAML вполне разумно предположить, что пространство имен без имени содержит элементы XAML в отсутствие определения пространства имен по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...