将GridView的Itemtemplate绑定到DataTable

时间:2012-07-23 11:24:06

标签: asp.net gridview

我在.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.Below是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 两次。我能够将数据集中的sync_scope_name列绑定到BoundField。我只需要显示一次

此致

Sachin K

2 个答案:

答案 0 :(得分:1)

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

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

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

select sync_scope_name 
from Sync.scope_info
group by sync_scope_name 

或使用distinct关键字

select distinct sync_scope_name from Sync.scope_info

答案 1 :(得分:1)

我在GridView中添加了AutoGenerateColumns =“false”。