1

私はGridViewそれを選択できるようにしています。からデータを取得しEntityDataSourceます。行が選択されているときに選択されているエンティティ オブジェクトを取得するにはどうすればよいGridViewですか? エンティティの主キーは に表示されませんGridView

回答ありがとうございます

4

4 に答える 4

1

グリッドビューでテンプレート フィールドを使用している場合は、select コマンドの CommandArgument プロパティで主キーを渡すことができます。例:

<asp:TemplateField>
    <ItemTemplate>
        <asp:LinkButton ID="btnSelect" runat="server" Text="Select"                                  CommandName="select" CommandArgument='<%# Eval("My_Primary_Key") %>' />
    </ItemTemplate>
</asp:TemplateField>

次に、ユーザーが「選択」ボタンをクリックすると、グリッドビューで「RowCommand」イベントがトリガーされます。このイベントをキャプチャして e.CommandArgument プロパティを確認すると、選択した行に対応する主キーにアクセスできるようになります。

protected void myGridView_RowCommand(object sender, GridViewCommandEventArgs e)
{
    if (e.CommandName.Equals("select", StringComparison.CurrentCultureIgnoreCase))
    {
        int primaryKeyInteger = Convert.ToInt32(e.CommandArgument);
        // Do other stuff ...
    }
}

お役に立てれば!

于 2010-05-15T05:12:36.273 に答える
0

グリッド ビューの DataKeyNames フィールド プロパティを使用するか、非表示の値を配置してデータ バインド イベントにデータをバインドすることもできます。非表示フィールド Gridview 選択イベントを使用して、非表示フィールドを検索し、そこから値を取得します。ありがとう 次のリンクが役に立ちます。

http://forums.asp.net/t/951615.aspx

于 2010-05-15T04:03:02.460 に答える
0

主キーを使用してデータベースに移動し、主キーを使用してレコードを検索し、プログラムでクラスを使用してデータを受け取ることができます。(c# はプロパティです)

于 2010-05-16T08:14:49.663 に答える
0

グリッドビューで非表示のコントロールを使用して、主キーを非表示にすることができます

于 2010-05-15T04:37:46.950 に答える