2012年3月31日星期六

GridView使用Tip

GridView使用Tip



1. 内容为html时,默认显示的就是html内容,如何让浏览器解析html,方法就是让GridView不编码html。

a) 方法一:设置绑定列的HtmlEncode为false

<asp:GridView ID="gvMail" runat="server" AutoGenerateColumns="False" Width="700px" >

<Columns>

<asp:BoundField DataField="EFFDT" HeaderText="<%$ Resources:ApplyDt %>" DataFormatString="{0:yyyy-MM-dd HH:mm:ss}" HtmlEncode="False" ></asp:BoundField>

</Columns>

</asp:GridView>

b) 方法二:在GridView的绑定事件中解码

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

{

if (e.Row.RowType == DataControlRowType.DataRow)

{

TableCellCollection cells = e.Row.Cells;

foreach (TableCell cell in cells)

{

cell.Text = Server.HtmlDecode(cell.Text);

}

}

}

2. 在GridView表头“HeaderText”中换行:使用<br />,并False掉编码

<Columns>

<asp:BoundField HeaderText="ddd<br/>www" HtmlEncode="false" />

</Columns>

参考资料:http://topic.csdn.net/u/20080822/09/895d3d7e-b447-4207-a70f-91f98994e0a3.html

3. 设置GridView显示格线(横竖都有),没研究明白,贴一段设置成功的代码,最重要的貌似是GridLines=”None”。

<asp:GridView ID="GridView1" runat="server" CellPadding="3" GridLines="None" BackColor="Black" CellSpacing="1">

<FooterStyle BackColor="#C6C3C6" ForeColor="Black" />

<RowStyle BackColor="#ECF5FF" ForeColor="Black" />

<SelectedRowStyle BackColor="#9471DE" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="#C6C3C6" ForeColor="Black" HorizontalAlign="Right" />

<HeaderStyle BackColor="#A6CBEF" Font-Bold="True" ForeColor="#404040" BorderColor="#A6CBEF" />

</asp:GridView>

4. 设置GridView的整体宽度固定,不会因为内容过多而撑破

a) 首先要添加Width属性设置宽度;

b) 要在绑定事件中加上如下代码:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

{

e.Row.Attributes.Add("style", "word-break:break-all;word-wrap:break-word");

}

c) 参考资料:http://social.msdn.microsoft.com/Forums/en/295/thread/6a41348f-7810-4192-ab52-3cb3c05f796a

5. HTML标签的鼠标移动上去时的tip换行的方法是:使用“&#13;”。

6. C#获取中文星期几的方法

DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("zh-cn"))



TAG: