20 messaggi dal 11 giugno 2012
Ciao a tutti,
ho un problema curioso (o almeno credo).
Nell'header della MasterPage e' inserita un'immagine e finche' navigo normalmente non ho problemi, ma quando vado su due pagine dove ci sono delle dropdownlist che fanno l'autopostback al cambio del valore selezionato e cambio valore l'immagine nell'header scompare!!!
Qualcuno ha qualche idea?
Grazie
Del codice per maggiori dettagli?

Ormai programmano tutti... ma la professionalità appartiene a pochi
20 messaggi dal 11 giugno 2012
Questa e' la parte di MasterPage interessata dove c'e' l'ImageButton che scompare
<div ID="headerXenia" runat="server" class="headerXenia">
            <div class="title">
                <h1>
                    <asp:ImageButton ID="LogoX2" ImageUrl="./img/logoxenia.png" runat="server" OnClick="LogoX2_Clic" />
                </h1>
            </div>
            <div class="loginDisplay">
                <div id="NotLoggedX" runat="server">
                    [ <asp:HyperLink ID="LinkAccessoX" runat="server" NavigateUrl="./Account/Login.aspx">Accedi</asp:HyperLink> ]
                </div>
                <div id="LoggedX" runat="server">
                    <div>
                        <span class="bold"><asp:LoginName ID="HeadLoginNameX" runat="server" /></span>
                        <asp:HyperLink ID="LinkHome2X" runat="server" Text="Pagina Iniziale" NavigateUrl="./Default.aspx"></asp:HyperLink>
                        <asp:HyperLink ID="LinkLogoutX" runat="server" Text="Logout" NavigateUrl="./Account/Logout.aspx"></asp:HyperLink>
                    </div>
                    <div>
                        <asp:HyperLink ID="LinkCambiaPwdX" runat="server" NavigateUrl="./Account/CambiaPassword.aspx">Cambia Password</asp:HyperLink>
                    </div>
                </div>
            </div>
        </div>
20 messaggi dal 11 giugno 2012
Questa invece e' la pagina con la DropDownList con AutoPostBack e OnSelectedIndexChanged
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Documenti.aspx.cs" Inherits="WebApplication1.Documenti1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <div runat="server" id="contenitore">
        <div runat="server" id="categoria">
            <div>
                Categoria: <asp:DropDownList ID="ddlCategoria" runat="server" OnSelectedIndexChanged="CaricaDocumenti" AutoPostBack="true"></asp:DropDownList>
            </div>
        </div>
        <div runat="server" id="documenti"></div>
    </div>
</asp:Content>
20 messaggi dal 11 giugno 2012
E questo e' il codebehind della pagina precedente
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;

namespace WebApplication1
{
    public partial class Documenti1 : System.Web.UI.Page
    {
        private static int cate = 0;

        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["id"] == null)
            {
                Response.Redirect(Session["root"] + "Account/Login.aspx?ReturnUrl=" + Session["root"] + "Documenti.aspx");
            }
        }

        protected void Page_LoadComplete(object sender, EventArgs e)
        {
            string id = Session["id"].ToString();
            if (Session["categoria"] != null)
            {
                cate = Convert.ToInt32(Session["categoria"]);
            }
            else
            {
                cate = 0;
            }

            SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["NetMLMConnectionString"].ConnectionString);
            try
            {
                conn.Open();
                ddlCategoria.Items.Clear();
                string sqlCate = "SELECT * FROM WebDocsCat";
                SqlCommand cmdCate = new SqlCommand(sqlCate, conn);
                cmdCate.CommandType = System.Data.CommandType.Text;
                SqlDataReader readerCate = cmdCate.ExecuteReader();
                ddlCategoria.Items.Add(new ListItem("Seleziona", "0"));
                if (0 == cate)
                {
                    ddlCategoria.SelectedValue = "0";
                }
                while (readerCate.Read())
                {
                    ddlCategoria.Items.Add(new ListItem(readerCate["Categoria"].ToString(), readerCate["Codice"].ToString()));
                    if (cate == Convert.ToInt32(readerCate["Codice"]))
                    {
                        ddlCategoria.SelectedValue = cate.ToString();
                    }
                }
                readerCate.Close();
                if (cate == 0)
                {
                    documenti.InnerHtml = "Seleziona una Categoria per vedere i relativi documenti";
                }
                else
                {
                    string sqlDocumenti = "SELECT * FROM WebDocs WHERE CodiceCategoria = " + cate;
                    SqlCommand cmdDocumenti = new SqlCommand(sqlDocumenti, conn);
                    cmdDocumenti.CommandType = System.Data.CommandType.Text;
                    SqlDataReader readerDocumenti = cmdDocumenti.ExecuteReader();
                    if (readerDocumenti.HasRows)
                    {
                        documenti.InnerHtml = "";
                        Table tblDoc = new Table();
                        while (readerDocumenti.Read())
                        {
                            TableRow rowTitolo = new TableRow();
                            TableCell cellTitolo = new TableCell();
                            cellTitolo.Text = readerDocumenti["Titolo"].ToString();
                            rowTitolo.Cells.Add(cellTitolo);
                            rowTitolo.CssClass = "rigaTitolo";
                            tblDoc.Rows.Add(rowTitolo);
                            TableRow rowDescr = new TableRow();
                            TableCell cellDescr = new TableCell();
                            cellDescr.Text = readerDocumenti["Descrizione"].ToString();
                            rowDescr.Cells.Add(cellDescr);
                            rowDescr.CssClass = "rigaDescrizione";
                            tblDoc.Rows.Add(rowDescr);
                            TableRow rowDoc = new TableRow();
                            TableCell cellDoc = new TableCell();
                            HyperLink hlCell = new HyperLink();
                            hlCell.Text = readerDocumenti["FileName"].ToString();
                            hlCell.NavigateUrl = "Download.aspx?name=" + readerDocumenti["FileName"].ToString();
                            hlCell.ID = readerDocumenti["IdDoc"].ToString();
                            cellDoc.Controls.Add(hlCell);
                            rowDoc.Cells.Add(cellDoc);
                            rowDoc.CssClass = "rigaDocumento";
                            tblDoc.Rows.Add(rowDoc);
                            TableRow rowSpace = new TableRow();
                            rowSpace.CssClass = "rigaSpazio";
                            tblDoc.Rows.Add(rowSpace);
                        }
                        readerDocumenti.Close();
                        documenti.Controls.Add(tblDoc);
                    }
                    else
                    {
                        documenti.InnerHtml = "La Categoria selezionata non ha documenti";
                    }
                }
            }
            catch (Exception ex)
            {
                string msg = "Insert Error:";
                msg += ex.Message;
                throw new Exception(msg);
            }
            finally
            {
                if (conn != null) conn.Close();
            }
        }

        protected void CaricaDocumenti(object sender, EventArgs e)
        {
            cate = Convert.ToInt32(ddlCategoria.SelectedValue);
            Session["categoria"] = cate;
        }
    }
}
20 messaggi dal 11 giugno 2012
Come detto nel primo messaggio finche' navigo normalmente (anche nella pagina con la dropdownlist) l'immagine si vede senza problemi, ma quando vado a scegliere un valore e fare il postback della pagina l'immagine scompare per poi ricomparire quando cambio pagina. Idee?
3.939 messaggi dal 28 gennaio 2003
se metti l'indirizzo dell'immagine assoluto, funziona?

ImageUrl="~/percorso_immagini/logoxenia.png"
ImageUrl va definito con la tilde. Non ti preoccupare se Visual studio ti segnale l'immagine (verde sottolineato) come assente. Altrimenti, nei controlli, con i percorsi relativi, rischi di non vederla, soprattutto in caso di url rewriting

Ormai programmano tutti... ma la professionalità appartiene a pochi

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.