Как стать автором
Обновить

Комментарии 3

Не так давно как раз думал над темой MVVM в UI Toolkit. Очень круто! С удовольствием приму участие в проекте, как найду время.

Библиотека очень нужная, но поход к байндингу uxml-first не нравится :(

Я бы предпочёл делать связку через код:

var counter = new ReactiveProperty<int>();
counter.SubscribeTo(root.Q<Text>("Count"));

Так что же вам не мешает это сделать?

public class MyFirstDocumentView : DocumentView<MyFirstViewModel>
{
    protected override void OnInit()
    {
        base.OnInit();

        RootVisualElement
            .Q<BindableTextField>("FirstNameTextField")
            .BindingValuePath = nameof(BindingContext.FirstName);

        RootVisualElement
            .Q<BindableTextField>("LastNameTextField")
            .BindingValuePath = nameof(BindingContext.LastName);

        RootVisualElement
            .Q<BindableLabel>("FullNameLabel")
            .BindingTextPath = nameof(BindingContext.FullName);
    }
}

Минус очевиден - лишний код, в котором могут быть допущены ошибки. И вам все равно в UXML файле необходимо будет задать имена компонентов. Так проще там сразу задать свойство для связывания, чем городить такой огород.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории