Формы Xamarin — ResourceDictionary и значение

#xaml #uint64 #uint32 #uint

#xaml #uint64 #uint32 #uint

Вопрос:

Это простой вопрос, может быть, глупый, но я застрял от часов..

У меня есть это в части XAML:

 <ContentPage.Resources>
  <ResourceDictionary>
    <System:Uint32 x:Key="UintValue">50</System:Uint32>
  </ResourceDictionary>
</ContentPage.Resources>
  

Конечно, чтобы иметь <System> доступ к типу, у меня была эта строка:

 xmlns:System="clr-namespace:System;assembly=mscorlib"
  

Однако у меня есть исключение синтаксического анализа XAML.. Когда я комментирую <System:Uint32...</System:Uint32> , это работает. #Но не имеет значения ..

Существует ссылка на документ Uint

 Type | Range              | Size                    | .NET Framework type
uint | 0 to 4,294,967,295 | Unsigned 32-bit integer | System.UInt32
  

Итак, если я прав, то Uint32 поступает из System, поэтому я должен ссылаться на него, как на System:Uint32 нет?

Спасибо за помощь!

Ответ №1:

Немного поздно, но я все равно опубликую ответ. Тип, который вам нужно импортировать, должен быть UInt32 вместо Uint32 , с учетом регистра. В любом случае, если вы хотите привязать это значение к марже или аналогичному значению, вы должны использовать String вместо этого, потому что они могут принимать больше целых чисел, разделенных двоеточием, и они являются строкой.

 <ContentPage 
xmlns="http://xamarin.com/schemas/2014/forms" 
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
xmlns:System="clr-namespace:System;assembly=mscorlib">
...
<System:UInt32 x:Key="sdsd">15</System:UInt32>
...
</ContentPage>