Параметр WPF Datagrid Itemssource не вызывает установщик при изменении дочернего объектаC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Параметр WPF Datagrid Itemssource не вызывает установщик при изменении дочернего объекта

Сообщение Anonymous »

Я работаю над приложением WPF, используя Caliburn Micro.
У меня есть сетка данных, в которой в качестве источника элементов содержится список пользовательской модели.
Модель выглядит так :

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

    public class ProductModel : Screen
{
private MyModel _value1 = new MyModel();
private MyModel _value2 = new MyModel();
private double _value3;

public double ValueTotal
{
get
{

var sumMaxValues = _value1.MaxValue + _value2.MaxValue;
var sumMinValues = _value1.MinValue + _value2.MinValue;

return (sumMaxValues + sumMinValues) / 2;
}
}
public MyModel Value1
{
get { return _value1; }
set
{
_value1 = value;
NotifyOfPropertyChange(() => ValueTotal);
}
}
public MyModel Value2
{
get { return _c_value2; }
set
{
__value2 = value;
NotifyOfPropertyChange(() => ValueTotal);
}
}
public double Value3
{
get { return _value3; }
set
{
_value3 = value;
NotifyOfPropertyChange(() => ValueTotal);
}
}
}
MyModel выглядит так:

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

    public class MyModel
{
public double MinValue { get; set; }
public double MaxValue { get; set; }
}
Моя проблема в том, что когда я меняю значение 1 или значение 2 в сетке данных, ValueTotal не обновляется. Однако, когда я меняю значение3, оно прекрасно обновляется.
Если это помогает, мой xaml выглядит так: Я пытался добавить несколько NotifyOfPropertyChange в MyModel и ProductModel, но безуспешно.
Я также добавил журналирование в установщики значений 1, 2 и 3. Когда я изменил минимум или максимум в сетке данных, он ничего не зарегистрировал, поэтому я думаю, проблема в том, что установщик даже не вызывается из сетки данных. Но я не знаю, как это изменить.

Подробнее здесь: https://stackoverflow.com/questions/792 ... ject-is-ch
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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