1

我在 .aspx 文件中有下面的 GridView。

 <asp:GridView ID="grdScopeList" runat="server">
    <Columns>
    <asp:TemplateField>
    <ItemTemplate>
    <asp:CheckBox ID="ScopeChk" runat="server" Checked=false />
    </ItemTemplate>
    </asp:TemplateField>
    <asp:BoundField DataField="sync_scope_name"  Visible=true />
    </Columns>
    </asp:GridView>

我正在使用 Dataset/DataTable 来分配 GridView。下面是 PageLoad 事件中使用的代码片段。

string scopecomm="select sync_scope_name from Sync.scope_info";
DataSet ds_scope = new DataSet();
ds_scope = GetData(scopecomm, remoteconn);   grdScopeList.DataSource = ds_scope;
grdScopeList.DataBind();

但是我得到了两次sync_scope_name 列。我能够将Dataset 中的sync_scope_name 列绑定到BoundField。我只需要显示一次

问候,

萨钦K

4

2 回答 2

1

我在 GridView 中添加了 AutoGenerateColumns="false"。

于 2012-07-24T05:45:53.260 回答
1

您的查询很可能返回重复项。

手动对数据库运行查询以丢弃它。

如果查询应该返回重复项并且您只想显示一次,则需要对查询进行分组

select sync_scope_name 
from Sync.scope_info
group by sync_scope_name 

或者使用distinct关键字

select distinct sync_scope_name from Sync.scope_info
于 2012-07-23T11:41:24.993 回答