为啥asp:TemplateField HeaderText="课程名称">改了这个还是不显示标头呢?难道数据源只能用控件不能用代码绑定?
我是这样绑定得见连接http://topic.csdn.net/u/20090120/16/a8fc4552-8533-485b-8ba0-5016bac06e22.html问题2 如何让GridView得日期改成这种形式2006年06月11日,在数据库中是datatime格式得!谢谢各位指点了!如果有gv得图文说明能给我份更好啦!

解决方案 »

  1.   

    1、编辑head模板
    2、{0:yyyy年MM月dd日}
      

  2.   

    第一个问题
    你把标头放在下面的位置显示.    <asp:GridView ID="GridView1" runat="server" BorderStyle="None" CellPadding="0" GridLines="None"
     AutoGenerateColumns="False" AllowPaging="True"  OnPageIndexChanging="GridView1_PageIndexChanging"
                                PageSize="6" UseAccessibleHeader="False">
                                <Columns>
                                    <asp:TemplateField HeaderText="aaa">
                                        <ItemTemplate>
                                  <asp:Label ID="ProductType" runat="server" Text='<%# Eval("downloadTime") %>' ForeColor="orangered" />
                                <asp:Label ID="Label1" runat="server" Text='<%# Eval("DownloadTime") %>' ForeColor="orangered" />
                                        
                                        </ItemTemplate>
                                        <HeaderTemplate>
                                            课程名称
                                        </HeaderTemplate>
                                    </asp:TemplateField>
                                </Columns>
                            </asp:GridView>
      

  3.   


    DataFormatString
    {0:yyyy年MM月dd日}
    并且 HtmlEncode要改成false
    否则没用
      

  4.   


        <asp:GridView ID="GridView1" runat="server" BorderStyle="None" CellPadding="0" GridLines="None"
     AutoGenerateColumns="False" AllowPaging="True"  OnPageIndexChanging="GridView1_PageIndexChanging"
                                PageSize="6" UseAccessibleHeader="False">
                                <Columns>
                                    <asp:TemplateField HeaderText="aaa">
                                        <ItemTemplate>
                                  <asp:Label ID="ProductType" runat="server" Text='<%# Eval("downloadTime","{0:yyyy年MM月dd日}") %>' ForeColor="orangered" />
                                <asp:Label ID="Label1" runat="server" Text='<%# Eval("DownloadTime","{0:yyyy年MM月dd日}") %>' ForeColor="orangered" />
                                        
                                        </ItemTemplate>
                                        <HeaderTemplate>
                                            课程名称
                                        </HeaderTemplate>
                                    </asp:TemplateField>
                                </Columns>
                            </asp:GridView>
    第一题加第二题答案还有他得样式是每两行颜色明暗相间得。。不知道怎么设置
    给你一个样式
    .gvAlterRow
    {
    height: 22px;
    background-image: url(../Images/CellBackGround.gif );
    background-repeat: repeat-x;
    background-color: White;
    border-style: none;
    }
    指定<AlternatingRowStyle CssClass="gvAlterRow" />
    这样就可以.
      

  5.   

    第二个问题:在设计模式下,点击gridview,右上角有一个小三角型,右键点击,然后选择自动套用样式。里面很多样式的了,应该有你想要的。
      

  6.   

    第一个问题:是<asp:TemplateField HeaderText="课程名称">这样来设置列名的,楼主的没显示?
      

  7.   

    第二个 时间问题解决了
     第一个加了头模板还是不显示 难道要把之前的HeaderText="课程名称">去掉?
      

  8.   

            <asp:GridView ID="GridView1" runat="server" OnRowDataBound="GridView1_RowDataBound">
                <Columns>
                    <asp:BoundField HeaderText="时间" DataField="Chatdatetime" HtmlEncode="False" DataFormatString="{0:yyyy年MM月dd日}" />
                </Columns>
                <RowStyle BorderStyle="Double" />
            </asp:GridView>
    记得添加事件RowDataBound         protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    DataRowView row = e.Row.DataItem as DataRowView;
                    if (e.Row.RowIndex % 2 == 0)
                    {
                        e.Row.Attributes.Add("style", "background-color:blue;");
                    }
                    else
                    {
                        e.Row.Attributes.Add("style", "background-color:red;");
                    }
                }
            }
      

  9.   

    你可以先弄一种出来,然后将那些颜色代码改了就行了啊!
    例如:
    <RowStyle BackColor="#FF4564" ForeColor="#333333" />是单数行的颜色设置。
    <AlternatingRowStyle BackColor="White" />这个是双数行的颜色设置,(就是间隔行)。
    楼主要怎样间隔颜色可以设置啊!
      

  10.   

    问题追加,怎么取文字得后半段,追加100分。 要把Microsoft office 2007  前面的Microsoft去掉只显示office 2007难道要用正则?加在哪?
    2008年12月23日  3333333  Microsoft office 2007  2009年01月07日  
    2008年12月23日  3333333  Microsoft office 2007  2009年01月07日  
    2008年12月23日  3333333  Microsoft office 2007  2009年01月07日  
    2008年12月23日  3333333  Microsoft office 2007  2009年01月07日  
    2008年12月24日  3333333  Microsoft office 2007  2009年01月07日  
      

  11.   

    建议楼主这样:
    页面
    <asp:Label ID="Label2" runat="server" Text='<%# DisplayContent(Eval("downloadTime")'></asp:Label>服务端代码实现public string DisplayContent(object obj)方法,这个方法跟平常定义的一样,在里面处理你想要的结果形式,返回一个string类型就行了。
      

  12.   


    谢谢!我觉得应该控制表格不应该控制Label,还有啊 郁闷 加黑线怎么加啊?
      

  13.   

    <asp:GridView ID="GridView1" runat="server" BorderStyle="None" CellPadding="0"
                                GridLines="None" AutoGenerateColumns="False" AllowPaging="True" ShowHeader="False"
                                OnPageIndexChanging="GridView1_PageIndexChanging" PageSize="8" UseAccessibleHeader="False"
                                AllowSorting="True">
                                <Columns>
                                    <asp:TemplateField HeaderText="下载日期">
                                        <ItemTemplate>
                                            <asp:Label ID="Label1" runat="server" ForeColor="Black" Text='<%# Eval("downloadTime","{0:yyyy年MM月dd日}") %>' />
                                        </ItemTemplate>
                                        <HeaderTemplate>
                                            下载日期
                                        </HeaderTemplate>
                                    </asp:TemplateField>
                                    <asp:TemplateField HeaderText="课程名称">
                                        <ItemTemplate>
                                            <a href="course_content.aspx?ID=<%# Eval("ClassID") %>&BigID=<%# Eval("ClassType") %>">
                                                <%# Eval("classtitle")%></a>
                                        </ItemTemplate>
                                        <HeaderTemplate>
                                            课程名称
                                        </HeaderTemplate>
                                    </asp:TemplateField>
                                    <asp:TemplateField HeaderText="课程类型 ">
                                        <ItemTemplate>
                                            <asp:Label ID="Label3" runat="server" ForeColor="Black" Text='<%# Eval("classtype") %>' />
                                        </ItemTemplate>
                                        <HeaderTemplate>
                                            课程类型
                                        </HeaderTemplate>
                                    </asp:TemplateField>
                                    <asp:TemplateField HeaderText="发布时间">
                                        <ItemTemplate>
                                            <asp:Label ID="Label4" runat="server" ForeColor="Black" Text='<%# Eval("releasetime","{0:yyyy年MM月dd日}") %>' />
                                        </ItemTemplate>
                                        <HeaderTemplate>
                                            发布时间
                                        </HeaderTemplate>
                                    </asp:TemplateField>
                                </Columns>
                                <AlternatingRowStyle BorderColor="Black" BorderStyle="Dotted" BorderWidth="1px" />
                            </asp:GridView>
    我现在是这个状态得 哈哈
      

  14.   

    列头加吧?<HeaderStyle 中添加Font-Underline="true"
      

  15.   

                string demo = "Microsoft office 2007";
                demo = demo.Replace("Microsoft ", "");
      

  16.   

    我这个类别不是固定得 大哥
    下载日期        课程名称           课程类型           发布时间  
    2008年12月23日  111111  Microsoft nnnnnn 2003  2009年01月07日  
    2008年12月23日  222     Microsoft office 2007  2009年02月07日  
    2008年12月23日  3333    Microsoft aaaaaa 2007  2009年01月08日 
      

  17.   

    datetime用eval变成object,再tostring()
      

  18.   

    1.dt.GetDateTimeFormats('D')[0].ToString();//2005年11月5日
    2.string.Format("{0:D}",dt);//2005年11月5日
      

  19.   

    格式化改成{0:yyyy年MM月dd日}然后把htmlencode设置为false
      

  20.   

    BianLian = Xi.ToString().Substring("\r\n")
      

  21.   

    BianLian = Xi.ToString().Substring("\r\n")这是正则吧?在哪使?咋使?
      

  22.   

    1.編輯HeaderTemplate2.DateTime.ToString()可以通過參數控制格式,參考MSDN。在你Eval后,類型轉換為DateTime,然後手動ToString()。3.用AlternatingRowStyle來設置隔行樣式。
      

  23.   

    总结回答问题:1头模板属性没开
                  2<asp:TemplateField HeaderText="发布时间">
                                        <ItemTemplate>
                                            <asp:Label ID="Label4" runat="server" ForeColor="Black" Text='<%# Eval("releasetime","{0:yyyy年MM月dd日}") %>' />
                                        </ItemTemplate>
                                        <HeaderTemplate>
                                            发布时间
                                        </HeaderTemplate>
     3 demo = demo.Replace("Microsoft ", ""); 替换demo内字符
     4 加黑线选定<ItemTemplate>项目模板,右边得属性内有边框选择。符合你要得格式。给整体加边框就选定gridview
      

  24.   

    总结回答问题:1头模板属性没开
                  2<asp:TemplateField HeaderText="发布时间">
                                        <ItemTemplate>
                                            <asp:Label ID="Label4" runat="server" ForeColor="Black" Text='<%# Eval("releasetime","{0:yyyy年MM月dd日}") %>' />
                                        </ItemTemplate>
                                        <HeaderTemplate>
                                            发布时间
                                        </HeaderTemplate>
     3 demo = demo.Replace("Microsoft ", ""); 替换demo内字符
     4 加黑线选定<ItemTemplate>项目模板,右边得属性内有边框选择。符合你要得格式。给整体加边框就选定gridview