首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在行中绘制单元格(Telerik)?

如何在行中绘制单元格(Telerik)?
EN

Stack Overflow用户
提问于 2017-08-01 20:03:01
回答 1查看 106关注 0票数 0

接下来我将编写处理fowFormatting my cells的代码:

代码语言:javascript
复制
private void gridViewRaces_RowFormatting(object sender, RowFormattingEventArgs e)
    {
        foreach (var cellColumn in e.RowElement.Data.Cells)
        {
            var cellInfo = cellColumn as GridViewCellInfo;
            if (cellInfo != null)
            {
                cellInfo.Style.DrawFill = true;
                if (cellInfo.ColumnInfo.Name == "columnContactProducerName")
                {
                    cellInfo.Style.DrawFill = true;
                    cellInfo.Style.BackColor = Color.Yellow;
                }
                else if (cellInfo.ColumnInfo.Name == "columnTransport")
                {
                    cellInfo.Style.BackColor = Color.Yellow;
                }
                else
                {
                    cellInfo.Style.BackColor = ColorTranslator.FromHtml((e.RowElement.Data.DataBoundItem as RaceForListDto).Color);
                }
            }

        }
        //e.RowElement.BackColor = ColorTranslator.FromHtml((e.RowElement.Data.DataBoundItem as RaceForListDto).Color);
    }

但我的细胞不会画画。如何在dataBinding上画一些行中的单元格?

EN

回答 1

Stack Overflow用户

发布于 2017-08-02 19:02:47

看起来做这件事的合适事件是ItemDataBound事件。请看这里:

http://docs.telerik.com/devtools/aspnet-ajax/controls/grid/appearance-and-styling/conditional-formatting

代码语言:javascript
复制
protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
//Is it a GridDataItem
if (e.Item is GridDataItem)
{
    //Get the instance of the right type
    GridDataItem dataBoundItem = e.Item as GridDataItem;

    //Check the formatting condition
    if (int.Parse(dataBoundItem["Size"].Text) > 100)
    {
        dataBoundItem["Received"].ForeColor = Color.Red;
        dataBoundItem["Received"].Font.Bold = true;
        //Customize more...
    }
}
}

或者更好的方法是使用自定义的CSS类,这样以后就可以进行更改,而不必重新构建项目:

代码语言:javascript
复制
protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e){
if (e.Item is GridDataItem)
{
    GridDataItem dataItem = e.Item as GridDataItem;
    if (dataItem["Country"].Text == "Mexico")
        dataItem.CssClass = "MyMexicoRowClass";
}
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45437306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档