XAML: Обязательное текстовое поле maxlength к постоянному Классу

вот решение, которое работает для меня, в первую очередь, вы должны обновить все свои зависимости, затем выполнить команду

npm cache clean --force

, после чего вы можете использовать

npx create-react-app
19
задан Ash 24 October 2008 в 10:11
поделиться

5 ответов

Фиксированный!

Первоначально я пытался делать это:

{Binding Path=MetaData+Sizes.Length1}

, который скомпилировал хорошо, однако привязка, отказавшая во времени выполнения, несмотря на Класс 'Два' являющийся datacontext, который путь не мог разрешить во внутренние статические классы (мог, я сделал что-то как: {Связывающий Путь = {x:Static MetaData+Size. Length1 }}?)

я должен был играть с расположением моих классов немного, но привязка теперь работает.

Новая структура класса:

namespace Blah
{
    public static class One
    {
        // This metadata class is moved outside of class 'Two', but in this instance
        // this doesn't matter as it relates to class 'One' more specifically than class 'Two'
        public static class MetaData
        {
            public static class Sizes
            {
                public static int Length1 { get { return 10; } }
                public static int Length2 { get { return 20; } }
            }
        }

        public partial class Two
        {
            public string MyBindingValue { get; set; }
        }
    }
}

Затем мой обязательный оператор следующие:

xmlns:local="clr-namespace:Blah"

и

MaxLength="{x:Static local:MetaData+Sizes.Length1}"

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

Слова благодарности все для Вашей справки!

7
ответ дан 30 November 2019 в 02:48
поделиться

если Вы не статический класс, Вы не можете связать с ним с x:Static. почему с помощью внутренних классов? если метаданные за пределами два, и Размеры являются свойством, можно легко получить доступ к ним с x:Static. Вы не можете связать с типами в этом случае, только с существующими объектами. но Один и Два типы, не объекты.

0
ответ дан 30 November 2019 в 02:48
поделиться
MaxLength="{x:Static local:One+Two+MetaData+Sizes.Length1}"

ссылочные свойства Периодов. Знаки "плюс" относятся к внутренним классам.

40
ответ дан 30 November 2019 в 02:48
поделиться

попытайтесь связать с x:Static. добавьте xmlns:local пространство имен с пространством имен Размеров к Вашему xaml заголовку и затем свяжите с чем-то вроде этого:

{x:Static local:Sizes.Length1}
0
ответ дан 30 November 2019 в 02:48
поделиться

К сожалению, со следующим я получаю ошибку Type 'One.Two.MetaData.Sizes' not found. Я не могу создать локальное пространство имен глубже, чем "Вздор" (хорошо согласно VS2008 так или иначе)

xmlns:local="clr-namespace:Blah"

и

MaxLength="{x:Static local:One.Two.MetaData.Sizes.Length1}"
0
ответ дан 30 November 2019 в 02:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: