【发布时间】:2015-02-15 14:56:05
【问题描述】:
我有一个绑定 Observable Collection 的数据网格。当我单击添加新按钮时,我会将新行添加到集合中。我如何务实地滚动到新行。
数据网格 XMAL
<DataGrid SelectedIndex="{Binding SelectedIntex}" IsEnabled="{Binding IsKeySet}" CanUserDeleteRows="False" CanUserAddRows="False" Name="dgwTemplateDetails" SelectionMode="Single" ItemsSource="{Binding OrderTemplateList, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" SelectedItem="{Binding SelectedOrderTemplate}" IsReadOnly="False" AutoGenerateColumns="False" Width="auto">
<DataGrid.Columns>
<DataGridTextColumn Header="Srl No" Visibility="Hidden" Binding="{Binding SrlNo}"/>
<DataGridTextColumn Header="Act Code" Width="75" Binding="{Binding ActCode, UpdateSourceTrigger=PropertyChanged}"/>
<DataGridTextColumn Header="Act Name" Width="275" Binding="{Binding ActName, UpdateSourceTrigger=PropertyChanged}"/>
<DataGridTextColumn Header="No. Of Days" Width="75" Binding="{Binding NoOfDays, UpdateSourceTrigger=PropertyChanged}"/>
<DataGridCheckBoxColumn Header="Is Cutting" Width="75" Binding="{Binding IsCutSelected, UpdateSourceTrigger=PropertyChanged}" />
</DataGrid.Columns>
</DataGrid>
VM 添加行函数
if (ValidateHeader())
{
if (OrderTemplateList == null)
this.OrderTemplateList = new ObservableCollection<EventManagementTemplate>();
EventManagementTemplate obJEvent = new EventManagementTemplate();
obJEvent.BuyerCode = this.BuyerCode;
this.OrderTemplateList.Add(obJEvent);
int no = 1;
this.OrderTemplateList.ToList().ForEach(m => m.SrlNo = no++);
}
【问题讨论】:
标签: c# wpf mvvm datagrid observablecollection