0

ドロップダウンリストにデータセットを入力する際に​​問題があります。データベース テーブルのユーザー名列をドロップダウン リストに表示したいのですが、最後の行の値しか表示されません。何時間も検索した後、解決策が見つかりませんでした。すべてのコードでほとんど同じ問題が発生します。これが私がやろうとしていることです:

Dataset ds = new Dataset();
ds = db.search();

            if(ds.Tables[0].Rows.Count>0)
{
            DropDownList1.DataSource=ds;
            DropDownList1.DataBind();
}

ASP マークアップ:

<asp:DropDownList ID="DropDownList1" runat="server">
</asp:DropDownList>
4

3 に答える 3

1

サーバー側のコードに示すように、ドロップダウンリストの以下のプロパティを設定してください。「ユーザー名」と「ID」を取得レコードセット列名に置き換えてください。

DropDownList1.DataSource = ds;
DropDownList1.DataTextField = "UserName";
DropDownList1.DataValueField = "ID";
DropDownList1.DataBind();
于 2012-08-06T06:10:40.630 に答える
0
 Using ds As DataSet = data_readers.data.ExecuteDataSet("LoadSearch", NOTHING)
            If ds.Tables.Count > 0 Then
                If ds.Tables(0).Rows.Count > 0 Then

                    DropDownList1.DataSource = New DataView(ds.Tables("myDataset"))
                    DropDownList1.DataBind

                End If
            End If
  End Using
于 2012-08-05T19:44:49.040 に答える
0

あなたの「ASP マークアップ」は完全に空です! ここで私のコードを見てみましょう。ソースページの良い例になるはずです:

また、objectdatasource をセットアップする必要があります。ドロップダウン リストの下にそのコードを提供しました。Listitem の値は私の好みです。あなたの状況では、列名が TRANS_CD_DESC に置き換わります。

<asp:DropDownList ID="ddlTRANS_CD_DESC" DataSourceID="OBJ_TRANS_CD_DESC" DataValueField="TRANS_CD_DESC"
                            DataTextField="TRANS_CD_DESC" AppendDataBoundItems="true" runat="server" Text='<%# bind("TRANS_CD_DESC") %>'>
                            <asp:ListItem Value="">-- Select One --</asp:ListItem>
                        </asp:DropDownList>
                        <asp:ObjectDataSource ID="OBJ_TRANS_CD_DESC" runat="server" TypeName="project1.dbqry"
                            SelectMethod="gProjectCIS"></asp:ObjectDataSource>
于 2012-08-06T17:53:10.123 に答える