我有个系统,里面的代码是从VS2003直接升级到VS2005。其中有datagrid控件,代码如下:
<asp:datagrid id="Ngrid" runat="server" BackColor="#EFEFEF" BorderWidth="1px" Font-Names="Verdana"
AutoGenerateColumns="False" Font-Size="8pt" Font-Name="Verdana" CellPadding="0" BorderColor="White"
PageSize="20" AllowPaging="True" Width="100%" ShowHeader="False" GridLines="Horizontal"OnItemDataBound="Ngrid_ItemDataBound">
<AlternatingItemStyle BackColor="#F6F6F6"></AlternatingItemStyle>
<Columns>
<asp:TemplateColumn>
<ItemStyle HorizontalAlign="Center" Width="30px"></ItemStyle>
</asp:TemplateColumn>
<asp:BoundColumn Visible="False" DataField="id" ReadOnly="True" HeaderText="编 号"></asp:BoundColumn>
<asp:HyperLinkColumn Target="_blank" DataNavigateUrlField="id" DataNavigateUrlFormatString="sshow.aspx?id={0}" DataTextField="title" DataTextFormatString="&nbsp;{0}&nbsp;">
<ItemStyle Height="22px"></ItemStyle>
</asp:HyperLinkColumn>
<asp:BoundColumn DataField="cdate" ReadOnly="True" HeaderText="发布时间" DataFormatString="&nbsp;{0}&nbsp;">
<ItemStyle Width="130px"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="views" HeaderText="点数" DataFormatString="[{0}]">
<ItemStyle HorizontalAlign="Center" Width="30px"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="uname" HeaderText="发布人">
<ItemStyle Width="100px" VerticalAlign="Bottom" HorizontalAlign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn Visible="False" DataField="cdate1"></asp:BoundColumn>
</Columns>
<PagerStyle VerticalAlign="Bottom" HorizontalAlign="Right" BackColor="#F6F6F6" Mode="NumericPages"></PagerStyle>
</asp:datagrid>
我想取得其中的<asp:BoundColumn和<asp:HyperLinkColumn控件,用来改变字体颜色,在VS2005里ItemDataBound事件里用this.Ngrid.Items[e.Item.ItemIndex].Cells[1].Controls[0]方法取不到<asp:BoundColumn控件,而且这些控件没有ID,无法用e.Item.FindControl方法找到,我该怎么办???
<asp:datagrid id="Ngrid" runat="server" BackColor="#EFEFEF" BorderWidth="1px" Font-Names="Verdana"
AutoGenerateColumns="False" Font-Size="8pt" Font-Name="Verdana" CellPadding="0" BorderColor="White"
PageSize="20" AllowPaging="True" Width="100%" ShowHeader="False" GridLines="Horizontal"OnItemDataBound="Ngrid_ItemDataBound">
<AlternatingItemStyle BackColor="#F6F6F6"></AlternatingItemStyle>
<Columns>
<asp:TemplateColumn>
<ItemStyle HorizontalAlign="Center" Width="30px"></ItemStyle>
</asp:TemplateColumn>
<asp:BoundColumn Visible="False" DataField="id" ReadOnly="True" HeaderText="编 号"></asp:BoundColumn>
<asp:HyperLinkColumn Target="_blank" DataNavigateUrlField="id" DataNavigateUrlFormatString="sshow.aspx?id={0}" DataTextField="title" DataTextFormatString="&nbsp;{0}&nbsp;">
<ItemStyle Height="22px"></ItemStyle>
</asp:HyperLinkColumn>
<asp:BoundColumn DataField="cdate" ReadOnly="True" HeaderText="发布时间" DataFormatString="&nbsp;{0}&nbsp;">
<ItemStyle Width="130px"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="views" HeaderText="点数" DataFormatString="[{0}]">
<ItemStyle HorizontalAlign="Center" Width="30px"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="uname" HeaderText="发布人">
<ItemStyle Width="100px" VerticalAlign="Bottom" HorizontalAlign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn Visible="False" DataField="cdate1"></asp:BoundColumn>
</Columns>
<PagerStyle VerticalAlign="Bottom" HorizontalAlign="Right" BackColor="#F6F6F6" Mode="NumericPages"></PagerStyle>
</asp:datagrid>
我想取得其中的<asp:BoundColumn和<asp:HyperLinkColumn控件,用来改变字体颜色,在VS2005里ItemDataBound事件里用this.Ngrid.Items[e.Item.ItemIndex].Cells[1].Controls[0]方法取不到<asp:BoundColumn控件,而且这些控件没有ID,无法用e.Item.FindControl方法找到,我该怎么办???
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货