Свяжите несколько MVVM в одном представленииC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Свяжите несколько MVVM в одном представлении

Сообщение Anonymous »

Я хотел бы привязать к элементам несколько моделей представления. Я еще не понял этого достаточно, чтобы реализовать это. Проблема для начинающих...:/ Одна модель представления для одного слайдера ясна для меня через DataContext. Но как мне это сделать, если у меня есть несколько моделей представления?
Пример: значения двух ползунков и свойство text двух текстовых полей должны быть привязаны к двум моделям представления. Побочная проблема в моем примере кода: изменение текста TextBox еще не меняет ползунок.
xaml: cs:

Код: Выделить всё

using System.ComponentModel;
using System.Runtime.CompilerServices;
using System.Windows;

namespace BindingViewModelSlider
{
public partial class MainWindow : Window
{
ViewModelSlider myViewModelSlider1 = new ViewModelSlider();
ViewModelSlider myViewModelSlider2 = new ViewModelSlider();

public MainWindow()
{
InitializeComponent();
DataContext = myViewModelSlider1;
DataContext = myViewModelSlider2;   // not working

// Set initally some slider values
myViewModelSlider1.SliderValue = 80;
myViewModelSlider2.SliderValue = 50;
}

}

// ViewModel for slider values
public class ViewModelSlider : INotifyPropertyChanged
{
private int sliderValue;
public string TextBoxText
{
get { return sliderValue.ToString();}
set
{
sliderValue = int.Parse(value);
OnPropertyChanged();
}
}

public int SliderValue
{
get{ return sliderValue;}
set
{
sliderValue = value;
TextBoxText = sliderValue.ToString();   // necessary or better via binding in xaml?
OnPropertyChanged();
}
}

public event PropertyChangedEventHandler PropertyChanged;

protected void OnPropertyChanged([CallerMemberName] String propName = null)
{
if (PropertyChanged != null)
PropertyChanged.Invoke(this, new PropertyChangedEventArgs(propName));
}

}
}
Не могли бы вы объяснить мне, как правильно связать обе модели представления?

Подробнее здесь: https://stackoverflow.com/questions/793 ... n-one-view
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Свяжите DataTable с DataGrid в WPF & MVVM
    Anonymous » » в форуме C#
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Свяжите несколько поставщиков аутентификации для телефона и электронной почты
    Anonymous » » в форуме Android
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • В чем разница между mvvm с чистой архитектурой и mvvm без чистой архитектуры в Android?
    Anonymous » » в форуме Android
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous
  • CommunityToolKit.Mvvm 8.4.0 и предупреждение MVVM Toolkit MVVMTK0045
    Anonymous » » в форуме C#
    0 Ответы
    68 Просмотры
    Последнее сообщение Anonymous
  • CommunityToolkit.mvvm 8.4.0 и MVVM Toolkit Warning Mvvmtk0045
    Anonymous » » в форуме C#
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»