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

#c# #wpf #xaml #data-binding #caliburn.micro

#c# #wpf #xaml #привязка к данным #caliburn.micro

Вопрос:

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

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

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

Раздел ViewModel C # выглядит следующим образом:

 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);
    }
}
  

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

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

Ответ №1:

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

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

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

1. Это сделало это! Спасибо, что ответили на мой вопрос.