Как уже упоминали другие в комментариях, если я не неправильно понял вопрос, вам не нужно мультисвязывание, чтобы выполнить то, что вы пытаетесь сделать.Чтобы получить значение ползунка для отображения в текстовом поле (и наоборот), вам просто нужно привязать значение к общему свойству в вашей модели представления.
Например, с учетом следующего xaml:
<Grid Margin="20" VerticalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="100"/>
</Grid.ColumnDefinitions>
<Slider Grid.Column="0" Minimum="0" Maximum="100" Value="{Binding FileSize}"/>
<TextBox Grid.Column="1" Text="{Binding FileSize}"/>
</Grid>
У вас есть ползунок, который привязывает его значение к свойству FileSize в вашей модели представления.
Связанная ViewModel:
class MainWindowViewModel : INotifyPropertyChanged
{
public int FileSize
{
get
{
return mFileSize;
}
set
{
if(mFileSize != value)
{
mFileSize = value;
OnPropertyChanged(nameof(FileSize));
}
}
} private int mFileSize = 50;
private void OnPropertyChanged(String propertyName) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
public event PropertyChangedEventHandler PropertyChanged;
}
Это позволяет изменять значение либо с помощью ползунка, либо путем ввода непосредственно в текстовое поле.Все еще должна быть проверка ошибок в текстовом поле, поскольку пользователь может вводить что угодно ... Но это показывает основную концепцию.
Это создает следующий пользовательский интерфейс.
![enter image description here](https://i.stack.imgur.com/cpCLB.png)
Я надеюсь, что это отвечает на вопрос, который вы задавали.