我想用datagrid显示一个表,第一列是checkbox,第二列是从数据库中读出的数据,并且点击后可以链接到另一个页面。我基本上实现了,但是出现了多余的列。部分代码如下:
.aspx代码
<asp:DataGrid id="MyDG" runat="server" Width="360px">
<Columns>
    <asp:TemplateColumn HeaderText="Add to Cart">
<HeaderStyle HorizontalAlign="Center"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
<ItemTemplate>
<asp:CheckBox id="Check" runat="server"></asp:CheckBox>
</ItemTemplate>
   </asp:TemplateColumn>
   <asp:TemplateColumn HeaderText="Title">
<ItemTemplate>
<a href='BookDetails.aspx?title=<%#DataBinder.Eval(Container.DataItem,"name")%>'><%#DataBinder.Eval(Container.DataItem,"name")%></a>
</ItemTemplate>
  </asp:TemplateColumn>
</Columns>
</asp:DataGrid>后台代码如下:
public void BindDataGrid()
{
SqlConnection myConnection = new SqlConnection(Prepare.ConnectionString);
String cmdText="SELECT name FROM Title5";
SqlDataAdapter myCommand = new SqlDataAdapter(cmdText,myConnection);
myConnection.Open();
DataSet ds = new DataSet();
myCommand.Fill(ds,"Book");
//为DataGrid控件绑定数据源
MyDG.DataSource=ds;
MyDG.DataBind();
myConnection.Close();
}
编译后显示的时候出现了3列。第3列是name列。可是我不需要这一列啊。我把name从数据库取出是为了显示在第二列上啊,到底是怎么回事啊。是不是绑定数据这里出现问题了啊。望高手赐教!!!