:master: prova così

pagina
codice:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="a.aspx.vb" Inherits="prove_a" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>

    <script language="javascript" type="text/javascript">
// <!CDATA[
function DropDownList1_onchange(v)
{
    var src = v.value;
    var img = document.getElementById("img1");
    img.src = src;
    if(src == "")
        img.style.display = "none";
    else
        img.style.display = "";
    
}

// ]]>
</script>

</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:DropDownList ID="DropDownList1" runat="server" onchange="DropDownList1_onchange(this);">
        </asp:DropDownList>
    </div>
    [img][/img]
    </form>
</body>
</html>
codice
codice:
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Me.IsPostBack Then
            msole.FillListControl(Me.DropDownList1, gl.StringaConnessioneTest, "immagini", "indirizzo", "indirizzo", New ListItem("", ""))
        End If
    End Sub

FillListControl lo sostituisci con una tua funzione che carichi il dropdown da tabella. In value ci devi mettere il percorso logico dell'immagine.

Tutto il resto lo fa un pizzico di javascript. Non serve il controllo server image