GridViewにて TextBox の値が変わると DropDownList の内容を変更したいのですが・・・
度々質問をさせていただきます。 現在、Visual Web Developer 2008 Express Edition(ASP.NET)のVBで開発を
行っております開発初心者の BEETLE と申します。宜しくお願いいたします。
GridView を SqlDataSource を用いて表示しています。 今回、行いたい事は GridView 内の TextBox を変更すると
それに対応した DropDownList (データバインドしてます) を変更させたいのですが、<SelectParameters> の設定が
よくわかりません。 GridView でない場合は <asp:ControlParameter ControlID="業者CD">等を記述できましたが
GridViewの場合、別のコントロールを選択しようと思うのですが、GridView1としか表示してくれません。
何か手があればと思う次第です・・・^^; 宜しくお願いいたします。
《ソース》
<%@ Page Language="VB" MaintainScrollPositionOnPostback=true%>
<%@ Import Namespace="System.Data.SqlClient" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="事業者CD" DataSourceID="SqlDataSource1">
<Columns>
<asp:CommandField ShowEditButton="True" />
<asp:TemplateField HeaderText="事業者CD" SortExpression="事業者CD">
<EditItemTemplate>
<asp:TextBox ID="txt事業者CD" runat="server" Text='<%# Bind("事業者CD") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lbl事業者CD" runat="server" Text='<%# Bind("事業者CD") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="店舗CD" SortExpression="店舗CD">
<EditItemTemplate>
<asp:TextBox ID="txt店舗CD" runat="server" Text='<%# Bind("店舗CD") %>'></asp:TextBox>
<br />
<asp:DropDownList ID="drp店舗" runat="server" AutoPostBack="True"
DataSourceID="店舗" DataTextField="名称" DataValueField="店舗CD"
SelectedValue='<%# Bind("店舗CD") %>' AppendDataBoundItems="True">
</asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lbl店舗" runat="server" Text='<%# Bind("店舗CD") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionStrings %>"
SelectCommand="SELECT [事業者CD], [店舗CD] FROM Table">
</asp:SqlDataSource>
<asp:SqlDataSource ID="店舗" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionStrings %>"
SelectCommand="SELECT 事業者CD, 店舗CD, 名称 FROM tbl店舗 WHERE (事業者CD = @事業者CD)"
ProviderName="System.Data.SqlClient">
<SelectParameters>
<asp:ControlParameter ControlID="GridView1" Name="事業者CD"
PropertyName="SelectedValue" />
</SelectParameters>
</asp:SqlDataSource>
</form>
</body>
</html>