Подтвердить что ты не робот

Как объявить тип данных системы в UWP/RT XAML?

Я пытаюсь получить доступ к пространству имен систем для переменных StaticResource в XAML в UWP. Здесь (в основном), что я использую:

<Page
    x:Class="App.UWP.Views.Step6"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:System="using:System"
    mc:Ignorable="d">

    <Page.Resources>
        <System:Double x:Key="ItemNameWidth">260</System:Double>
    </Page.Resources>

    <TextBlock FontSize="16" Width="{StaticResource ItemNameWidth}">foo</TextBlock>
</page>

Несмотря на то, что <System:Double ...> отображается в IntelliSense как действительный, я получаю следующую ошибку времени выполнения:

Исключение типа "Windows.UI.Xaml.Markup.XamlParseException" произошло в mscorlib.ni.dll, но не было обработано в коде пользователя

Информация WinRT: Невозможно десериализовать список типов метаданных XBF, поскольку "Double" не был найден в пространстве имен "Система". [Строка: 0 Позиция: 0]

Я открыт для других способов объявления двойника, если этот метод не будет работать.

4b9b3361

Ответ 1

Выключает его в пространстве имен x: по умолчанию.

<Page
    x:Class="App.UWP.Views.Step6"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:System="using:System"
    mc:Ignorable="d">

    <Page.Resources>
        <x:Double x:Key="ItemNameWidth">260</x:Double>
    </Page.Resources>

    <TextBlock FontSize="16" Width="{StaticResource ItemNameWidth}">foo</TextBlock>
</page>