2012-11-12 43 views
-1

我是ASP.NET C#的新手。需要幫助來顯示圖像到另一個頁面從FileUpload控制

這裏我遇到了顯示圖像的問題。我會解釋我在這裏做什麼以及我在哪裏遇到問題。

我使用FileUpload控件創建了一個頁面。 就像其他論壇,我有一個按鈕預覽。當用戶點擊時,它會顯示用戶已寫入的內容以及他或她上傳的圖像。

所以我想創建一個名爲Preview.aspx的頁面,它是空白的。 秒我有一個頁面稱爲管理。在那個頁面我有FileUpload控制。 即使有幾個文本框,標籤...其他控件,但沒有那麼有用在這裏。 我將FileUpload控件命名爲fuImage。

我向你展示了我在事件btnPreview_Click中編寫的內容。

string img; 
if (fuImage.HasFile){ 
    fuImage.SaveAs(@"C:\Temp\" + fuImage.FileName); 
    img = "<img alt=\"sd\" src=\"" + @"C:\Temp\" + fuImage.FileName.ToString() + "\"></img>"; 
    }else 
    img = ""; 

    Functions.displayOnCommon = "<h3>" + tbSubject.Text + "</h3><hr/>"+img+"<p>" + tbPost.Text + "</p>"; 
    ClientScript.RegisterStartupScript(this.Page.GetType(), "", "window.open('Preview.aspx','Graph','height=400,width=800');", 

我在服務器上保存用戶圖像並使用該圖像顯示爲預覽。 Functions.displayOnCommon只是在另一個位置聲明的簡單字符串,並不是必需的。

這裏是Preview.aspx的後臺C#代碼。

protected void Page_Load(object sender, EventArgs e) 
    { 
     printPreview(Functions.displayOnCommon); 
    } 
void printPreview(string texts) { 
     Response.Write("<div class=\"preview\">" + texts + "</div>"); 
    } 

它顯示我整個文本,但不是圖像。 對不起,我的英文說明不好。 我只是學習英語和ASP.NET C#。 :D

謝謝。

回答

1

您的代碼很混亂,但基本上不能從瀏覽器引用本地服務器文件路徑。

img = "<img alt=\"sd\" src=\"" + @"C:\Temp\" + fuImage.FileName.ToString() + "\"></img>"; 

實際上,您將需要引用依次加載圖像和流回客戶端,並有多種方式來實現這一目標的服務器端點。

+0

是的。我也知道。但是,我發現解決方案就在我們的正上方。請你分享我如何使它簡單,快速和簡單,請:D – Bekhbayar

相關問題