Что-то я конкретно с WPF запутался.
Есть страница. В шапке прописан атрибут DataContext с указанием на отдельный класс — модель данных.
На странице лежит GridControl от DevExpress. У него указан атрибут
ItemsSource="{Binding MainReport}"
На этой же странице несколько текстбоксов и кнопка.
Текст боксы прописаны примерно так:
<TextBox x:Name="NetIncomeCritery" Text="{Binding NetIncomeCritery}" Grid.Column="0" Grid.Row="0" />
Класс указанный в DataContext соответственно содержит свойства MainReport, NetIncomeCritery ...
Свойство MainReport выглядит примерно так
public IQueryable<VwPapierEx> MainReport
{
get
{
IQueryable<VwPapier> query = connectDBReport.VwPapiers;
if (NetIncomeCritery != null)
{
decimal whereNetIncome;
if (Decimal.TryParse(NetIncomeCritery, out whereNetIncome))
{
query = from q1 in query
join q2 in connectDBReport.Akknetincs
on q1.Ticker equals q2.Ticker
where q1.Dimenstion == q2.Dimenstion && q1.Year == q2.Year && q1.Quarterly == q2.Quarterly && q2.Netinccomdev > whereNetIncome
select q1;
}
}
return query.Select(s => new VwPapierEx(s));
}
}
То есть предполагалось, что в зависимости от значений введенных пользователем в текстовые поля изменяется запрос для грида.
На кнопку повешен обработчик (находящийся в классе страницы).
И вот тут собственно возникает вопрос, а как написать код обработчика, чтобы GridControl перезапросил свойство и, соответственно, пересчитал отображаемые данные?
Использование MyGrid.RefreshData() не помогает. Обращения к свойству в дебаге не видно.