在GridView帮定数据时把太长的字段替换成"...." 数据库中id大于1时帮定到Gridview上显示为红色

效果图片:



数据库图:




id大于1时帮定到Gridview上显示为红色



显示页面的HTML代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>无标题页</title>
<%--    <link href="StyleSheet.css" rel="stylesheet" type="text/css" />--%>
</head>
<body>
    
<form id="form1" runat="server">
    
<div style="text-align: center">
        
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False"
            DataKeyNames
="id" PageSize="5" Width="528px" OnPageIndexChanging="GridView1_PageIndexChanging">
            
<Columns>
                
<asp:BoundField DataField="id" HeaderText="编号" InsertVisible="False" ReadOnly="True"
                    SortExpression
="id" />
                
<asp:BoundField DataField="title" HeaderText="标题" SortExpression="title" />
                
<asp:BoundField DataField="content" HeaderText="内容" SortExpression="content" />
            
</Columns>
        
</asp:GridView>
    
</div>
    
</form>
</body>
</html>


显示页面的CS代码:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;

public partial class _Default : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
if (!this.IsPostBack)
        
{
            bind();
        }

    }


    
private void bind()
    
{
        
string con = ConfigurationManager.AppSettings["AccessDataBase"+ Server.MapPath("App_Data/details.mdb");
        OleDbConnection dbconnection 
= new OleDbConnection(con);
        dbconnection.Open();
        OleDbCommand cmd 
= new OleDbCommand("select * from news", dbconnection);
        DataSet ds 
= new DataSet();
        OleDbDataAdapter oda 
= new OleDbDataAdapter(cmd);
        oda.Fill(ds);
        GridView1.DataSource 
= ds;
        GridView1.DataBind();


        
//让在GridView中多余的汉字用""代替
        for (int i = 0; i < =GridView1.Rows.Count-1; i++)
        
{
            DataRowView mydrv;
            
string gintro;
            
if (GridView1.PageIndex == 0)
            
{                //这里吧DataSet的视图赋值给了DataRowView
                
//处理第一页的5个记录
                mydrv = ds.Tables[0].DefaultView[i];
                gintro 
= Convert.ToString(mydrv["content"]);
                GridView1.Rows[i].Cells[
2].Text = substr(gintro, 5);
            }

            mydrv 
= ds.Tables[0].DefaultView[i+5*(GridView1.PageIndex)];
            gintro 
= Convert.ToString(mydrv["content"]);
            GridView1.Rows[i].Cells[
2].Text = substr(gintro, 5);
        }


    }


    
public string substr(string sstring, int nleng)
    
{
        
if (sstring.Length <= nleng)
        
{
            
return sstring;
        }

        
string snewstr = sstring.Substring(0, nleng);
        snewstr 
= snewstr + "";
        
return snewstr;
    }

    
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    
{
        GridView1.PageIndex 
= e.NewPageIndex;
        bind();
    }

}


webconfig配置:

<?xml version="1.0"?>
<!-- 
    注意: 除了手动编辑此文件以外,您还可以使用 
    Web 管理工具来配置应用程序的设置。可以使用 Visual Studio 中的
     “网站”
->“Asp.Net 配置”选项。
    设置和注释的完整列表在 
    machine.config.comments 中,该文件通常位于 
    \Windows\Microsoft.Net\Framework\v2.x\Config 中
-->
<configuration>
  
<appSettings>
    
<add key="AccessDataBase" value="Provider = Microsoft.Jet.OleDb.4.0; Data Source=" />
  
</appSettings>
    
<connectionStrings/>
    
<system.web>
        
<!-- 
            设置 compilation debug
="true" 将调试符号插入
            已编译的页面中。但由于这会 
            影响性能,因此只在开发过程中将此值 
            设置为 
true
        
-->
        
<compilation debug="true"/>
        
<!--
            通过 
<authentication> 节可以配置 ASP.NET 使用的 
            安全身份验证模式,
            以标识传入的用户。 
        
-->
        
<authentication mode="Windows"/>
        
<!--
            如果在执行请求的过程中出现未处理的错误,
            则通过 
<customErrors> 节可以配置相应的处理步骤。具体说来,
            开发人员通过该节可以配置
            要显示的 html 错误页
            以代替错误堆栈跟踪。

        
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
            
<error statusCode="403" redirect="NoAccess.htm" />
            
<error statusCode="404" redirect="FileNotFound.htm" />
        
</customErrors>
        
-->
    
</system.web>
</configuration>

//数据库中id大于1时帮定到Gridview上显示为红色

    //数据库中id大于1时帮定到Gridview上显示为红色
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    
{
        
if (e.Row.RowType == DataControlRowType.DataRow)
        
{
            
for (int i = 0;i<= GridView1.Rows.Count ; i++)
            
{
                
if (Convert.ToInt32(e.Row.Cells[0].Text)>1)
                
{
                    e.Row.Cells[
1].BackColor = System.Drawing.Color.Red;
                }

            }

         }

    }
posted on 2007-06-06 21:18  自由.Net  阅读(1357)  评论(1编辑  收藏  举报