ドロップダウンリストと送信ボタンとして「日付」フィールドを持つページがあります。送信をクリックすると、選択した値が他のページのグリッド ビューに表示されます。
グリッドビューに「編集」のようなフィールドがあり、クリックすると、その日付値を持つ最初のページに移動します。今回の問題は、「グリッドビューから渡された日付」がドロップダウンリストで選択された値を表示しないことです。
<asp:TemplateField HeaderText="DOB" SortExpression="dob">
<ItemTemplate>
<asp:Label ID="lbldob" runat="server" Text='<%# Bind("dob") %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Edit">
<ItemTemplate>
<asp:LinkButton ID="hypeno" CommandName="cmdBind" runat="server" Text='<%# Eval("id") %>' CommandArgument='<%# Bind("id") %>'>
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
コード:
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "cmdBind")
{
string id = e.CommandArgument.ToString();
LinkButton lb = (LinkButton)e.CommandSource;
Response.Redirect("/practice/registation.aspx?id=" + id +"&type=edit");
}
}
string type = Request.QueryString["type"].ToString();
if (type == "edit")
{ connection con = new connection();
DataSet ds;
ds = con.select("select dob from registration where id='"+Request.QueryString["id"].ToString()+"'");
drddate.SelectedItem.Text= ds.Tables[0].Rows[0][0].ToString();
}