C # Как связать значение полосы прокрутки WPF с ViewModel с помощью Caliburn.Micro - PullRequest
0 голосов
/ 13 марта 2019

Я пытаюсь привязать значение полосы прокрутки из моего XAML к свойству в моей ViewModel в C #. Я могу связать другие значения управления, такие как кнопки и текстовые блоки, но я не могу найти решение для полосы прокрутки. Я использую Caliburn.Micro для установки MVVM.

Ниже у меня есть текстовый блок и полоса прокрутки. Текстовый блок работает нормально, но полоса прокрутки, похоже, не связана со свойством ScrollValue. Раздел XAML выглядит так:

<TextBox x:Name="ApproachHeight"/>
<ScrollBar x:Name="ScrollValue"/>

Раздел C # ViewModel выглядит так:

private double _approachHeight = 250;
private double _scrollValue;

public double ApproachHeight
{
    get
    {
        return _approachHeight;
    }
    set
    {
        _approachHeight = value;
        NotifyOfPropertyChange(() => ApproachHeight);
    }
}

public double ScrollValue
{
    get
    {
        return _scrollValue;
    }
    set
    {
        _scrollValue = value;
        NotifyOfPropertyChange(() => ScrollValue);
    }
}

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

Я новичок в WPF и MVVM, поэтому прошу прощения, если моя терминология неверна. Будем очень благодарны за любые идеи о том, как связать значение полосы прокрутки со свойством моей ViewModel!

1 Ответ

1 голос
/ 13 марта 2019

Просто свяжите атрибут Value ScrollBar, используя стандартную привязку WPF:

<ScrollBar Value="{Binding ScrollValue}"/>
...