[英]Filters aren't updating Itemsource queries
这是一个相当基本的问题,但我想知道为什么它没有更新或不是动态的。 基本上,查询应该在选择其他日期时更改。
private DateTime StartDateTo;
public DateTime _StartDateTo { get { return _StartDateTo; } set { _StartDateTo = value; Filter(); } }
private DateTime EndDateTo;
public DateTime _EndDateTo { get { return _EndDateTo; } set { _EndDateTo = value; Filter(); } }
private ObservableCollection<Quarterly> _QuarterlyInfo;
public ObservableCollection<Quarterly> QuarterlyInfo { get { return _QuarterlyInfo; } set{_QuarterlyInfo = value; Filter();} }
public ReportGridViewModel(IEventAggregator events)
{
EndDateTo = new DateTime(2013, 4, 1);
StartDateTo = new DateTime(2010, 6, 30);
QuarterlyInfo = new ObservableCollection<Quarterly>();
Generalinfo = new Quarterly();
Filter();
}
public new void Filter()
{
using (FBContext ctx = DB.Get())
{
QuarterlyInfo.Clear();
//*************************** General Inquiry ******************************//
Generalinfo = new Quarterly();
var general = from z in ctx.Interactions
where z.ActivityDate >= StartDateTo && z.ActivityDate <= EndDateTo && z.Indepth == false
select new { Indepth = z.Indepth };
Generalinfo.SectionInfo = "# of General Inquiries";
Generalinfo.Result = general.Count();
QuarterlyInfo.Add(Generalinfo);
}
}
该信息可以提取,但是在更改参数时不会更新。
xaml
面:
<DatePicker x:Name="StartDateTo" SelectedDate="{Binding StartDateTo, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
<DatePicker x:Name="EndDateTo" SelectedDate="{Binding EndDateTo, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
<telerik:RadGridView ItemsSource="{Binding QuarterlyInfo, IsAsync=True}" AutoGenerateColumns="True">
这样的事情应该起作用:
private DateTime _StartDateTo;
public DateTime StartDateTo
{
get { return _StartDateTo; }
set
{
_StartDateTo = value;
Filter();
NotifyOfPropertyChange(() => StartDateTo);
}
}
private DateTime _EndDateTo;
public DateTime EndDateTo
{
get { return _EndDateTo; }
set
{
_EndDateTo = value;
Filter();
NotifyOfPropertyChange(() => EndDateTo);
}
}
private ObservableCollection<Quarterly> _QuarterlyInfo;
public ObservableCollection<Quarterly> QuarterlyInfo
{
get { return _QuarterlyInfo; }
set
{
_QuarterlyInfo = value;
Filter();
NotifyOfPropertyChange(() => QuarterlyInfo);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.