如何改变的GridView的数据绑定后的标题文本?绑定、文本、标题、数据

2023-09-03 07:13:24 作者:笑我孤陌

我有一个gridview我绑定与GridView控件其动态所以没有硬code在DESIN文本数据表。

我试过后,数据绑定和GridView的,但没有成功的preRender去改变它。

其实有下划线(_)的文本,我想用空格替换它。

下面是code

 < ASP:GridView控件ID =grdSearchResult=服务器的AutoGenerateColumns =真WIDTH =99%在preRender =grdSearchResult_ preRender 
            OnRowCreated =grdSearchResult_OnRowCreatedOnPageIndexChanging =grdSearchResult_PageIndexChanging>
            < HeaderStyle前景色=白背景色=#215B8D/>
            < AlternatingRowStyle背景色=#F7F7F7/>
            < RowStyle的CssClass =gridtextHorizo​​ntalAlign =中心/>
        < / ASP:GridView控件>



保护无效grdSearchResult_ preRender(对象发件人,EventArgs的)
{
    的for(int i = 0; I< grdSearchResult.Columns.Count;我++)
    {
        grdSearchResult.Columns [I] .HeaderText = grdSearchResult.Columns [Ⅰ] .HeaderText.Replace(_,);
    }
}
 

解决方案

能做到这一点与的RowDataBound GridView控件的事件

 保护无效grdSearchResult_RowDataBound(对象发件人,GridViewRowEventArgs E)
{
     如果(e.Row.RowType == DataControlRowType.Header)
     {
        的for(int i = 0; I< e.Row.Cells.Count;我++)
        {
            e.Row.Cells [I]。文= e.Row.Cells [Ⅰ] .Text.Replace(_,);
        }
     }
}
 

和它工作正常。

c Gridview 控件数据手动绑定

I have a gridview I bound a DataTable with that Gridview Its dynamic so no hardcode Text in desin.

I tried to change it after Databound and in PreRender of gridview but no Success.

Actually there are Underscores('_') in text and I want to Replace it with space.

Below is code

<asp:GridView ID="grdSearchResult" runat="server" AutoGenerateColumns="True" Width="99%" OnPreRender="grdSearchResult_PreRender"
            OnRowCreated="grdSearchResult_OnRowCreated" OnPageIndexChanging="grdSearchResult_PageIndexChanging">
            <HeaderStyle ForeColor="White" BackColor="#215B8D" />
            <AlternatingRowStyle BackColor="#F7F7F7" />
            <RowStyle CssClass="gridtext" HorizontalAlign="Center" />
        </asp:GridView>



protected void grdSearchResult_PreRender(object sender, EventArgs e)
{
    for (int i = 0; i < grdSearchResult.Columns.Count; i++)
    {
        grdSearchResult.Columns[i].HeaderText = grdSearchResult.Columns[i].HeaderText.Replace("_", "");
    }
}

解决方案

Can do this with RowDataBound event of GridView

protected void grdSearchResult_RowDataBound(object sender, GridViewRowEventArgs e)
{
     if (e.Row.RowType == DataControlRowType.Header)
     {
        for (int i = 0; i < e.Row.Cells.Count; i++)
        {
            e.Row.Cells[i].Text = e.Row.Cells[i].Text.Replace("_", " ");
        }
     }
}

and it works fine.

 
精彩推荐
图片推荐