注册 登录
编程论坛 ASP.NET技术论坛

关于datagrid 绑定 dropdownlist 的问题,急需大家帮助?

scindy 发布于 2009-08-01 14:43, 702 次点击
我的DATAGRID模板绑定了DROPDOWNLIST,当加载DATAGRID时候,dropdownlist绑定从数据库中的数据,有一个问题

我的数据库结构为:

tblusers               
id  username  groupid

1     aaa      2
2     bbb      2

tblgroup

id    groupname

1      销售组
2      财务组

dropdownlist 用的是datasource selectcommand 语句为下面的SQL语句

SQL语句为:
select u.id,g.id as gid,g.groupname,u.userno,u.username,u.userpwd,u.macaddress,u.keyvalue,u.memo from tblusers u left join tblgroup g on u.groupid=g.id

这样的话下拉列表里面就是两个  财务组 ,我想实现的是下拉菜单里面是 销售组 和 财务组 ,请问是哪儿的问题呢?
4 回复
#2
scindy2009-08-01 15:19
补充一下:

<asp:DataGrid id="DataGrid2" Width="100%" style="BORDER-RIGHT: #99ccff 1px solid; BORDER-TOP: #99ccff 1px solid; FONT-SIZE: 12px; BORDER-LEFT: #99ccff 1px solid; BORDER-BOTTOM: #99ccff 1px solid"
HeaderStyle-BackColor="#99ccff" AllowPaging="True" OnEditCommand="mydatagrid_edit"
OnCancelCommand="mydatagrid_cancel" OnUpdateCommand="mydatagrid_update" OnDeleteCommand="mydatagrid_delete"
DataKeyField="id" AutoGenerateColumns="False" runat="server">
<Columns>
<asp:EditCommandColumn HeaderText="操作" EditText="编辑" CancelText="取消" UpdateText="更新">
                                    <ItemStyle Wrap="False" />
                                    <HeaderStyle Width="90px" />
                                </asp:EditCommandColumn>
                                <asp:TemplateColumn HeaderText="指定组">
                                    <ItemTemplate> <asp:DropDownList ID = "ddlgroup" runat="server" DataTextField="groupname" DataValueField="gid" DataSourceID="SqlDataSource1"> </asp:DropDownList> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString=" <%$ ConnectionStrings:TY3LConnectionString %>"
                                        SelectCommand="select u.id,g.id as gid,g.groupname,u.userno,u.username,u.userpwd,u.macaddress,u.keyvalue,u.memo from tblusers u left join tblgroup g on u.groupid=g.id" >
                                    </asp:SqlDataSource>
                                    </ItemTemplate>
                                    <HeaderStyle CssClass="inputs" Width="132px" />
                                </asp:TemplateColumn>
<asp:BoundColumn DataField="memo" HeaderText="备注">
                                    <HeaderStyle Width="132px" />
                                </asp:BoundColumn>
    <asp:TemplateColumn HeaderText="操作">
                                <ItemTemplate>
                                    <asp:Button ID="Delete" CommandName="delete" Text="删 除" Runat="server" CssClass="inputs"> </asp:Button>
                                </ItemTemplate>
                                    <HeaderStyle CssClass="inputs" Width="132px" />
                                </asp:TemplateColumn>
                            </Columns>
<PagerStyle Visible="False"> </PagerStyle>
                            <HeaderStyle BackColor="#99CCFF" />
</asp:DataGrid>
#3
scindy2009-08-01 15:19
我是想改一下事件,在不同的操作取不同的事件

加载时候,用户属于哪个组就显示哪个组,点编辑的时候就显示所有的组。
#4
scindy2009-08-01 15:43
怎么没人响应呢,现在怎么这么冷清呢?
#5
dhbest2009-08-04 15:40
你的条件是 left join tblgroup g on u.groupid=g.id
 groupid 都是2 所以就都是 财务组 啦 ~
直接绑定tblgroup 不就行吗?
1