我有一个组合框,用户可以选择特定年份(由数据库填充)并查看年份的特定信息。该信息存储在绑定到数据网格的数据表中。我希望它在我改变年份时重新创建数据网格。
_PropertyTenantData
是一个DataTable,它有14列Property Id,Property和year + Month。 FillDataGrid创建具有给定年份的_PropertyTenantData
列,并运行填充其行的MySQL查询。当ComboBox中的选择发生更改时,我想刷新DataGrid,因为它将具有新的列名和不同的数据。
public ViewCurrentPropertyTenant : Window
{
FillComboBox();
FillDataGrid("2010");
InitializeComponent();
}
//...
private void cboYear_SelectionChangd(object sender, SelectionChangedEventArgs e)
{
object selectedItem = cboYear.SelectedItem;
string year = (selectedItem as YearData).Year;
if(!String.IsNullOrEmpty(year))
{
_PropertyTenantData.Reset();
FillDataGrid(year);
myGrid.Items.Refresh();
}
}
第一部分运行正常,并根据我想要的结构提供数据。第二部分删除所有行,列保持不变,并且_PropertyTenantData
的新行未添加到dataGrid。谢谢你的帮助!
答案 0 :(得分:0)
没关系,我找到了答案。而不是刷新我只是这样做:
myGrid.ItemsSource = _PropertyTenantData.DefaultView;