27/04/2007, 03:47
|
| | Fecha de Ingreso: abril-2007
Mensajes: 2
Antigüedad: 17 años, 8 meses Puntos: 0 | |
Re: rellenar un dropdownlist a partir de otro Hola yo tuve esa duda y ya lo he solucionado toma mi código.
Tienes que poner la propiedad autopostback a true.
Es muy facil en el primer dropdownlist accedo a las marcas de un producto(se pone en el evento Load) y en el segundo accedo al modelo.(el código se pone en el evento selectindexchange del primer drop)
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DropDownList1.Items.Clear();
OleDbConnection cnn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=""C:\Documents and Settings\Guillermo\Mis documentos\Visual Studio 2005\WebSites\Proyecto Final ISW2\App_Data\Proyectoisw2bbdd.mdb"";Persist Security Info=True");
OleDbCommand cmd = cnn.CreateCommand();
cnn.Open();
cmd.Transaction = cnn.BeginTransaction();
cmd.CommandText = "select marca from Datos_productos";
OleDbDataReader dr = cmd.ExecuteReader();
DropDownList1.DataSource = dr;
DropDownList1.DataTextField = "marca";
DropDownList1.DataBind();
DropDownList1_SelectedIndexChanged(null, null);
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
OleDbConnection cnn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=""C:\Documents and Settings\Guillermo\Mis documentos\Visual Studio 2005\WebSites\Proyecto Final ISW2\App_Data\Proyectoisw2bbdd.mdb"";Persist Security Info=True");
OleDbCommand cmd = cnn.CreateCommand();
cnn.Open();
cmd.Transaction = cnn.BeginTransaction();
cmd.CommandText = "select modelo from Datos_productos where marca=('" + DropDownList1.Text + "')";
OleDbDataReader dr = cmd.ExecuteReader();
DropDownList2.DataSource = dr;
DropDownList2.DataTextField = "modelo";
DropDownList2.DataBind();
/*cmd.CommandText = "select ruta from Datos_productos where modelo=('" + DropDownList2.Text + "')";
Image1.ImageUrl = "ruta";*/
} |