DevExpress WinForms TileView格式规则

时间:2015-11-20 18:02:08

标签: devexpress

我将gridview转换为tile视图,并添加了一些格式规则。当我运行我的项目时,格式规则不起作用。我确定我的规则是正确的。我该怎么办?

1 个答案:

答案 0 :(得分:2)

正如我发现的那样,要有条件地自定义图块,您应该处理TileView.ItemCustomize Event

请参阅:Tile View

  

TileView.ItemCustomize事件会在此磁贴之前触发每个磁贴   被展示。处理此事件时,您可以阅读其e.Item   参数访问完全生成,准备显示   瓷砖项目。之后,您可以应用所需的更改。例如,   应用不同的背景颜色或访问TileItem.Elements   用于修改特定元素的集合。

可以通过访问TileView.AppearanceItem属性提供的外观设置来自定义视图中的所有TileViewItemElements。同时,每个单独的元素都有自己的外观设置,可以覆盖此全局外观。要访问这些外观,请使用TileItemElement.Appearance属性。

示例:

private void tileView1_ItemCustomize(object sender, DevExpress.XtraGrid.Views.Tile.TileViewItemCustomizeEventArgs e) {
    e.Item.Elements[6].Text = String.Format("${0}M", ((Decimal)(Int32)tileView1.GetRowCellValue(e.RowHandle, colPrice) / 1000000).ToString("0.0"));
    if ((bool)tileView1.GetRowCellValue(e.RowHandle, colSold) == true) {
        e.Item.Elements[1].Image = global::TileViewHomes.Properties.Resources.gray_element;
        e.Item.Elements[6].Text = "SOLD";
        //Changes background colour of non selected tileitem
        e.Item.AppearanceItem.Normal.BackColor = Color.Red; 
    }
}

参考文献:
tileView_ItemCustomize is not updating until resize