Как управлять сериализацией свойств визуального десингера в Xamarin для iOS - PullRequest
0 голосов
/ 01 октября 2018

В Xamarin для iOS у меня есть представление, которое наследуется от UIView, которое настроено следующим образом:

[Register("BorderView"), DesignTimeVisible(true)]
public partial class BorderView : UIView, IComponent
{
    ...

    [Export("BorderStyle"), Browsable(true)]
    public BorderStyles BorderStyle
    {
        get { return this.borderStyle; }
        set { this.borderStyle = value; }
    }

    ...

    private BorderStyles borderStyle = BorderStyles.All;

    ...
}

Где BorderStyles - это enum, настроенное следующим образом:

public enum BorderStyles : int
{
    All = 0,
    Top = 1,
    Bottom = 2,
    None = 3
}

Проблема, с которой я столкнулся, заключается в визуальном конструкторе (IDE - Visual Studio для Windows).По большей части установка свойства Border Style работает как задумано;однако, если указано значение default , равное All, конструктор немедленно возвращается к любому ранее не установленному значению (, например, , Top, Bottom илиNone как показано ниже).Выбор « Значение по умолчанию » из выпадающего списка приведет к выбору All, однако это кажется мне не интуитивным и указывает, что, возможно, я что-то упускаю.

Property being set from visual designer, unable to save selection of 'All'.

Есть ли способ управления сериализацией в визуальном конструкторе Xamarin для iOS?

Я бы хотел, чтобы при выборе All был сохранензначение свойства, не забывая выбрать синтезированную дизайнером опцию " Значение по умолчанию " (которая преобразуется в All).

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