开发平台:asp.net core2.0
根据cell的值在ItemFormatter属性里设置了该行的背景颜色,再选这行的时候,背景颜色还是ItemFormatter属性里设置的颜色,
有没有办法是选中这行的时候让ItemFormatter属性里设置的inlinestyle背景颜色无效,显示原来选中行时背景颜色(css:wj-state-selected,wj-state-multi-selected),
没选这行的时候再显示ItemFormatter属性里设置的背景颜色
以下是我现在的代码:
@model IEnumerable<Sale>
@(Html.C1().FlexGrid<Sale>()
.AutoGenerateColumns(false)
.Id("flexgrid")
.CssClass("grid")
.IsReadOnly(false)
.ShowAlternatingRows(false)
.Bind(Model)
.OrderBy("ID")
.Columns(bl =>
{
bl.Add(cb => cb.Binding("ID"));
bl.Add(cb => cb.Binding("Start"));
bl.Add(cb => cb.Binding("End"));
bl.Add(cb => cb.Binding("Country"));
bl.Add(cb => cb.Binding("Product"));
bl.Add(cb => cb.Binding("Color"));
bl.Add(cb => cb.Binding("Amount").Format("c"));
bl.Add(cb => cb.Binding("Amount2").Format("c"));
bl.Add(cb => cb.Binding("Discount").Format("p0"));
bl.Add(cb => cb.Binding("Active"));
})
.ItemFormatter("itemFormatter")
)
@section Scripts{
<script>
function itemFormatter(panel, r, c, cell) {
cell.style.backgroundColor = "";
if (panel.cellType == wijmo.grid.CellType.Cell) {
var yokoku = panel.rows[r].dataItem.ID;
if (yokoku == "1") {
cell.style.backgroundColor = "#ffc000";
}
}
}
</script>
}
|
|