asp.net 在Gridview里如何让某列只显示几个字,多余用...表示

前台代码如下<asp:GridViewID="gridView"runat="server"AllowPaging="True"Width="100%"CellPaddi... 前台代码如下
<asp:GridView ID="gridView" runat="server" AllowPaging="True"
Width="100%" CellPadding="3" OnPageIndexChanging ="gridView_PageIndexChanging"
BorderWidth="1px" DataKeyNames="commentId" OnRowDataBound="gridView_RowDataBound"
AutoGenerateColumns="False" RowStyle-HorizontalAlign="Center"
OnRowCreated="gridView_OnRowCreated" >
<Columns>
<asp:TemplateField ControlStyle-Width="30" HeaderText="选择" >
<ItemTemplate>
<asp:CheckBox ID="DeleteThis" onclick="javascript:CCA(this);" runat="server" />
</ItemTemplate>

<ControlStyle Width="30px"></ControlStyle>
</asp:TemplateField>

<asp:BoundField DataField="commentContent" HeaderText="评论内容" SortExpression="commentContent"
ItemStyle-HorizontalAlign="Center" >
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>
<asp:BoundField DataField="commentAuthor" HeaderText="作者" SortExpression="commentAuthor"
ItemStyle-HorizontalAlign="Center" >
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>
<asp:BoundField DataField="commentDate" HeaderText="日期" SortExpression="commentDate"
ItemStyle-HorizontalAlign="Center" >
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>
<asp:BoundField DataField="commentNewsId" HeaderText="评论的文章ID" SortExpression="commentNewsId"
ItemStyle-HorizontalAlign="Center" >
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>
<asp:BoundField DataField="commentUserid" HeaderText="评论者"
SortExpression="commentUserid" ItemStyle-HorizontalAlign="Center" >
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>

................
</asp:GridView>

gridView_RowDataBound的代码如何设置呢,让 评论内容 列显示如题效果
展开
 我来答
XCExceXCExce
2011-07-24 · TA获得超过647个赞
知道小有建树答主
回答量:237
采纳率:0%
帮助的人:331万
展开全部
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
GridViewRow gvr = (GridViewRow)e.Row;
string str = gvr.Cells[1].Text;//这个1应该改成“评论内容”的在此行的索引,从0开始
if (str.Length > 10)
{
gvr.Cells[1].Text = str.Substring(0, 10) + "...";
}
}
其实也不太麻烦,难度也不高。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
平梦醉神风1I
2011-07-23 · TA获得超过1510个赞
知道小有建树答主
回答量:691
采纳率:0%
帮助的人:1019万
展开全部

<asp:BoundField DataField="commentContent" HeaderText="评论内容" SortExpression="commentContent"
ItemStyle-HorizontalAlign="Center" >
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>
替换为
<asp:TemplateField HeaderText="评论内容" SortExpression="commentContent">
<ItemTemplate>
<%# Eval("commentContent").ToString().Length > 10 ? Eval("commentContent").ToString().Substring(0, 10) + "..." : Eval("commentContent").ToString() %>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>
追问
我是想在gridView_RowDataBound事件里添加代码实现效果~~
追答
1. 这个操作没有必要一定使用GridView的RowDataBound事件,更好的做法是后台写个方法前台调用
2.如果用RowDataBound事件,前台GridView最好用TemplateField以方便FindControl,我认为这对你有难度
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ccaixc1988
2011-07-25
知道答主
回答量:32
采纳率:0%
帮助的人:0
展开全部
将<asp:BoundField DataField="commentContent" HeaderText="评论内容" SortExpression="commentContent"
ItemStyle-HorizontalAlign="Center" >
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>
改为
<asp:TemplateField HeaderText="评论内容" SortExpression="commentContent">
<ItemTemplate>
<%# Eval("commentContent").ToString().Length > 10 ? Eval("commentContent").ToString().Substring(0, 10) + "..." : Eval("commentContent").ToString() %>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liulihangg
2011-07-27 · TA获得超过397个赞
知道答主
回答量:44
采纳率:0%
帮助的人:24.4万
展开全部
可以用Substring(0, 1);
直接啊~开那个字符开始几个字符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小狗核桃
2011-07-23 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:127
采纳率:0%
帮助的人:104万
展开全部
gridView_RowDataBound里面也是一样的,用SubString,不如楼上说的方便..
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式