【发布时间】:2019-03-27 01:28:40
【问题描述】:
我有一个绑定到 DataTable 的 DataGrid,autogeneratecolumns=true 因为数据表可以是 Excel 文件中的任何内容。
但是现在我想用红色绘制特定的单元格并添加一个工具提示,它是一个错误消息,当从 Excel 加载数据时会出现在验证过程中。
我的目标是将所有有错误的单元格涂成红色。错误出现在List<CError> 中,其中 CError 可能包含 {row=4,col=6,Error=" the date is wrong"} 这样的数据,因此某些单元格会出现错误,我想将这些单元格涂成红色并附加对他们来说工具提示中的错误,但我找不到方法。我的 DataGrid 定义如下:
在 Viewmodel 中,我有一个“LoadData()”方法,该方法在按下某个按钮时运行,该函数是:
public List<CError> ErrorInSheet {get;set;}
public void LoadData()
{
Sheets= GetSheetsFromExcel(PathExcel);
SelectedSheet= Sheets.FirstOrDefault();
MyDataTableFromExcel= LoadDataFromSheet(PathExcel, SelectedSheet);
ErrorInSheet=ValidateData(MyDataTableFromExcel);
}
CError 类是这样的:
public class CErrorExcel
{
public int row { get; set; }
public int col { get; set; }
public string Error { get; set; }
}
我的问题是如何在验证过程后仅将数据网格中出现错误的单元格涂成红色,这些错误将在 ErrorInSheet 集合中
我不知道我是不是因为我找不到绘制 CErrorExcel 类中指示的单元格的方法而采用了不好的方法。
【问题讨论】: