ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 上标的问题通过后台的c#代码实现了

上标的问题通过后台的c#代码实现了

原创 Linux操作系统 作者:Kneeland 时间:2010-07-01 08:44:12 0 删除 编辑

经常在网上看到,尽量不要用gridview这样的控件,但是项目中已经用到这样的控件了,如果将其改为其他控件,则会浪费很多时间,于是当遇到问题时会尽力解决问题,而非推翻之后重做。

       对于gridview控件的HeaderText应当如何实现上下标呢?如下:

<asp:GridView ID="GridView1" runat="server" >

  <Columns>

  ………………………..

  <asp:BoundField DataField="ljzy" HeaderText="累计增油(104t)" />

 …………………………

 Columns>

asp:GridView>

以上代码是存放在**.aspx页面中的,位于标签中,为此,我们将这些代码称作位于前台。我试了很多方法,希望能够在HeaderText的值中直接赋予带有上标的字符串,即,104,但是没有实现。于是我转而去.cs文件中去寻找解决办法,由于.cs文件中均是由c#代码写成,于是我们称作后台。最后我找到了解决办法,方法是在page_load[注1]函数中做如下赋值操作:

GridView11.HeaderRow.Cells[2].Text =Server.HtmlDecode ("(104t)");

下面是对以上语句进行解释:

l        HeaderRow:获取gridview的标题行对象

l        Cells:获取行的单元格对象。Cells[2]则表示第三个单元格

l        Server:获取server对象,它是system.web.httpserverutility类的实例

l        HtmlDecode:Server的方法,对html编码的字符串进行解码。

l        :通过html标签来实现上标的文字排版效果。下标的表示方法是:

最后的结果为:

注1:不能在page_init函数中做如下操作:

GridView11.HeaderRow.Cells[2].Text +=Server.HtmlDecode ("(104t)");

因为此时会引发“未将对象引用设置到对象的实例” 错误,一般是下面的原因:

l        ViewState 对象为Null。

l        DateSet 为空。

l        sql语句或Datebase的原因导致DataReader空。

l        声明字符串变量时未赋空值就应用变量。

l        未用new初始化对象。

l        Session对象为空。

l        对控件赋文本值时,值不存在

l        使用Request.QueryString()时,所获取的对象不存在,或在值为空时未赋初始值

l        使用FindControl时,控件不存在却没有做预处理  

l        重复定义造成未将对象引用设置到对象的实例错误

gridview的上标.JPG

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21331312/viewspace-666781/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-04-08

  • 博文量
    7
  • 访问量
    36604