ASP.NET - dropdownlist dependientes en detailsview

   
Vista:

dropdownlist dependientes en detailsview

Publicado por nenure (56 intervenciones) el 20/10/2008 11:44:16
Hola, tengo el siguiente codigo en detailsview donde coge datos de la tabla "inmobiliarias". quiero que al insertar un dato, la "provincia" de la tabla de "provincias" y la "localidad" de la tabla "localidades" se puedan seleccionar mediante 2 dropdownlists. Para ello, cuando se selecciona "provincia" quiero en el siguiente dropdownlist de localidades solo aparezcan las localidades de esa provincia seleccionada, pero no consigo que salga bien. alguien me puede ayudar? o si alguien sabe alguna otra manera de hacerlo se lo agradeceria mucho. gracias de antemano.

<asp:DetailsView ID="DetailsView1" AutoGenerateRows="False" runat="server" DataSourceID="SqlDataSource2" Height="50px" OnItemUpdated="Detail_ItemUpdated"
Width="100%" CellPadding="4" ForeColor="#333333" GridLines="None" BorderWidth="1px">
<Fields>
<asp:TemplateField HeaderText="pro" SortExpression="provincia">
<EditItemTemplate>
<asp:DropDownList ID="DropDownListprov" runat="server" DataSourceID="sqlDsProvincias" AutoPostBack="true"
DataTextField="provincia" DataValueField="provincia">
</asp:DropDownList>
<asp:SqlDataSource ID="sqlDsProvincias" runat="server"
ConnectionString="<%$ ConnectionStrings:conexion buena %>"
ProviderName="<%$ ConnectionStrings:conexion buena.ProviderName %>"
SelectCommand="SELECT provincia FROM Provincias"></asp:SqlDataSource>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("provincia") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>

<asp:TemplateField HeaderText="Localidad" SortExpression="Localidad">
<EditItemTemplate>
<asp:DropDownList ID="DropDownListloc" runat="server" DataSourceID="sqlDsLocalidades"
DataTextField="Localidad" DataValueField="Localidad">
</asp:DropDownList>
<asp:SqlDataSource ID="sqlDsLocalidades" runat="server" ConnectionString="<%$ ConnectionStrings:conexion buena %>"
ProviderName="<%$ ConnectionStrings:conexion buena.ProviderName %>"
SelectCommand="SELECT Localidad FROM Localidades WHERE (provincia = ?)">
<SelectParameters>
<asp:ControlParameter ControlID="DropDownListprov" Name="provincia" PropertyName="SelectedValue" Type="int32" />
</SelectParameters>
</asp:SqlDataSource>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("Localidad") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>


</Fields>
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<CommandRowStyle BackColor="#E2DED6" Font-Bold="True" Width="80%" />
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" Width="80%" />
<FieldHeaderStyle BackColor="#E9ECF1" Font-Bold="True" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<EditRowStyle Width="80%" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<InsertRowStyle Width="80%" />
<EmptyDataRowStyle Width="80%" />
</asp:DetailsView>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:dropdownlist dependientes en detailsview

Publicado por nenure (56 intervenciones) el 24/10/2008 12:11:58
Hola, ya he conseguido que me salgan los datos del dropdownlist dependientes, pero ahora tengo otro problema. a la hora de editar, me guarda la provincia pero la localidad no, y ya no encuentro ninguna solucion. a la hora de insertar no puedo hacer nada. os pongo el codigo por favor a ver si alguien sabe algo... ya no se me ocurre nada.
gracias.

<asp:templatefield headertext="provincia" sortexpression="provincia" >
<itemtemplate>
<asp:Label ID="provincia" runat="server" Text='<%# Bind("provincia") %>'></asp:Label>
</itemtemplate>
<edititemtemplate>
<asp:dropdownlist id="dropdownlistprov" AutoPostBack="true" runat="server" appenddatabounditems="true" datasourceid="sqldatasourceprov"
datatextfield="nombre_provincia" datavaluefield="nombre_provincia" selectedvalue='<%# bind("provincia") %>' >
<asp:ListItem Value="-"></asp:ListItem>
</asp:dropdownlist>
<asp:SqlDataSource ID="sqldatasourceprov" runat="server" ConnectionString="<%$ ConnectionStrings:conexion buena %>"
ProviderName="<%$ ConnectionStrings:conexion buena.ProviderName %>" SelectCommand="SELECT NOMBRE_PROVINCIA FROM PROVINCIAS order by nombre_provincia">
</asp:SqlDataSource>
</edititemtemplate>
<insertitemtemplate>
<asp:dropdownlist id="dropdownlistprov" runat="server" appenddatabounditems="true" datasourceid="sqldatasourceprov"
datatextfield="nombre_provincia" datavaluefield="nombre_provincia" selectedvalue='<%# DataBinder.Eval(Container.DataItem,"provincia") %>'
AutoPostBack="true">

</asp:dropdownlist>
<asp:SqlDataSource ID="SqlDataSourceprov" runat="server" ConnectionString="<%$ ConnectionStrings:conexion buena %>"
ProviderName="<%$ ConnectionStrings:conexion buena.ProviderName %>" SelectCommand="SELECT NOMBRE_PROVINCIA FROM PROVINCIAS order by nombre_provincia">
</asp:SqlDataSource>
</insertitemtemplate>
</asp:templatefield>

<asp:TemplateField ConvertEmptyStringToNull="true" HeaderText="localidad" SortExpression="localidad">
<EditItemTemplate>
<asp:DropDownList ID="DropDownListlo" runat="server" DataSourceID="SqlDataSourcelo" DataTextField="localidad" DataValueField="localidad" >

</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSourcelo" runat="server" ConnectionString="<%$ ConnectionStrings:conexion buena %>" ProviderName="<%$ ConnectionStrings:conexion buena.ProviderName %>"
SelectCommand="SELECT localidad FROM localidades_old WHERE (provincia = ?) order by localidad">
<SelectParameters>
<asp:ControlParameter ControlID="DropDownListprov" Name="nombre_provincia" PropertyName="SelectedValue" Type="string" />
</SelectParameters>
</asp:SqlDataSource>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="localidad" runat="server" Text='<%# Bind("localidad") %>'></asp:Label>
</ItemTemplate>
<InsertItemTemplate>
<asp:DropDownList ID="DropDownListloc" runat="server" DataSourceID="SqlDataSourceloc" DataTextField="localidad" DataValueField="localidad" >

</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSourceloc" runat="server" ConnectionString="<%$ ConnectionStrings:conexion buena %>" ProviderName="<%$ ConnectionStrings:conexion buena.ProviderName %>"
SelectCommand="SELECT localidad FROM localidades_old WHERE (provincia = ?) order by localidad">
<SelectParameters>
<asp:ControlParameter ControlID="DropDownListprov" Name="nombre_provincia" PropertyName="SelectedValue" Type="string" />
</SelectParameters>
</asp:SqlDataSource>
</InsertItemTemplate>
</asp:TemplateField>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar