2012-07-04 51 views
1
<div style="width:100%; height:200px; overflow:scroll; border-color:White;"> 
     <asp:GridView ID="UsersGridView" runat="server" 
      CssClass="label" ShowHeaderWhenEmpty="True" Width="100%" 
      AllowSorting="True" HeaderStyle-BackColor="LightGray" CellPadding="4" 
      ForeColor="#333333" GridLines="None" DataSourceID="UsersDataSource" > 
      <AlternatingRowStyle BackColor="White" ForeColor="#284775" /> 
      <Columns> 
       <asp:BoundField HeaderText="Fleet Description" ReadOnly="True" 
        HeaderStyle-Wrap="false" HtmlEncode="True" > 
        <HeaderStyle Wrap="False"></HeaderStyle> 
       </asp:BoundField> 
       <asp:BoundField DataField="Fleet Code" HeaderText="Fleet Code" ReadOnly="True" 
        HeaderStyle-Wrap="false" > 
        <HeaderStyle Wrap="False"></HeaderStyle> 
       </asp:BoundField> 
       <asp:BoundField DataField="First Name" HeaderText="First Name" ReadOnly="True" 
        HeaderStyle-Wrap="false" > 
        <HeaderStyle Wrap="False"></HeaderStyle> 
       </asp:BoundField> 
       <asp:BoundField DataField="Last Name" HeaderText="Last Name" ReadOnly="True" 
        HeaderStyle-Wrap="false" > 
        <HeaderStyle Wrap="False"></HeaderStyle> 
       </asp:BoundField> 
       <asp:BoundField DataField="Username" HeaderText="User Name" ReadOnly="True" 
        HeaderStyle-Wrap="false" > 
        <HeaderStyle Wrap="False"></HeaderStyle> 
       </asp:BoundField> 
       <asp:BoundField DataField="Email" HeaderText="Email" ReadOnly="True" 
        HeaderStyle-Wrap="false" > 
        <HeaderStyle Wrap="False"></HeaderStyle> 
       </asp:BoundField> 
       <asp:BoundField DataField="Phone" HeaderText="Phone" ReadOnly="True" 
        HeaderStyle-Wrap="false" > 
        <HeaderStyle Wrap="False"></HeaderStyle> 
       </asp:BoundField> 
      </Columns> 
      <EditRowStyle BackColor="#999999" /> 
      <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> 

      <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White"></HeaderStyle> 
      <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" /> 
      <RowStyle BackColor="#F7F6F3" ForeColor="#333333" /> 
      <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" /> 
      <SortedAscendingCellStyle BackColor="#E9E7E2" /> 
      <SortedAscendingHeaderStyle BackColor="#506C8C" /> 
      <SortedDescendingCellStyle BackColor="#FFFDF8" /> 
      <SortedDescendingHeaderStyle BackColor="#6F8DAE" /> 
     </asp:GridView> 
     <asp:SqlDataSource ID="UsersDataSource" runat="server" 
      ConnectionString="<%$ ConnectionStrings:ApplicationServices %>" 
      SelectCommand="SELECT  UserDataAssociation.Fleet as &quot;Fleet Code&quot;, UserDataAssociation.FirstName as &quot;First Name&quot;, UserDataAssociation.LastName as &quot;Last Name&quot;, aspnet_Users.UserName, aspnet_Membership.Email, 
        UserDataAssociation.Phone 
FROM   aspnet_Membership INNER JOIN 
        aspnet_Users ON aspnet_Membership.UserId = aspnet_Users.UserId INNER JOIN 
        UserDataAssociation ON aspnet_Membership.UserId = UserDataAssociation.UserId"></asp:SqlDataSource> 
    </div> 

我有一個select語句的sqldatasource這個gridview。但是,當頁面被加載時,gridview將其原始列的兩倍,由數據源創建。我希望這不是明顯的情況。SqlDataSource將新列添加到Gridview?

我在做什麼錯?

感謝

回答

5

設置GridviewAutoGenerateColumns屬性設爲False

3

還有就是在編輯菜單欄「自動生成字段」選項,取消它。當你選擇SqlDataSource作爲你的數據源時,它創建了列,出於某種原因,它沒有取消選中自動生成字段選項,這就是它創建兩次的原因。當你點擊網格視圖時,右上角會出現一個白色箭頭,提供更多選項,如果展開該菜單,單擊「編輯列」,然後取消選中「自動生成字段」選項。或者簡單地將AutoGenerateColumns財產設置爲

enter image description here

+0

工作十分感謝 – eytanfb