2010-12-23 10 views
0

Ich versuche, ein visio doc in einer aspx Seite mit dem folgenden CodeÄndern <param> Wert von Code

<OBJECT classid="CLSID:279D6C9A-652E-4833-BEFC-312CA8887857" 
codebase="http://download.microsoft.com/download/4/5/2/452f8090-413f-408f-83c0-edd66db786ee/vviewer.exe" 
id="viewer1" width="100%" height="100"> 
<param name="BackColor" value="16777120"> 
<param name="AlertsEnabled" value="1"> 
<param name="ContextMenuEnabled" value="1"> 
<param name="GridVisible" value="0"> 
<param name="HighQualityRender" value="1"> 
<param name="PageColor" value="16777215"> 
<param name="PageVisible" value="1"> 
<param name="PropertyDialogEnabled" value="1"> 
<param name="ScrollbarsVisible" value="1"> 
<param name="ToolbarVisible" value="1"> 
<param name="SRC" value="http://wssxxxx/Shared%20Documents/Yukon%20Timeline.vsd"> 
<param name="CurrentPageIndex" value="0"> 
<param name="Zoom" value="-1"> 
</object> 

i die value Parameter SRC von Code ändern muß einzubetten, wie gehe ich davon?

Antwort

1

Sie können es auf dem Server laufen haben:

<param name="SRC" id="prmSrc" runat="server" /> 

Und in Ihrem Code hinter:

prmSrc.Attributes["value"] = "..."; 
3

Verwenden Sie ein code block:

<param name="SRC" value="<%:MyValue%>"> 

Oder diese (wenn nicht .NET 4.0 verwenden):

<param name="SRC" value="<%=Server.HtmlEncode(MyValue)%>"> 

In Ihrer Seite können Sie eine String-Eigenschaft erstellen MyValue genannt:

public string MyValue { get; set; } 

Und setzen Sie es in Code, was Sie brauchen:

// In page_load 
MyValue = "http://example.com/code_blocks.vsd"; 
+0

gab mir einen Fehler 'Compiler-Fehlermeldung: CS1525: Ungültige Ausdruck Begriff ':' ' – Shekhar

+1

Die' <%: MyValue%> 'Syntax funktioniert nur in ASP.NET 4. Versuchen Sie stattdessen' <% = Server.HtmlEncode (MyValue)%> '. –

+0

@Shark - das ist neu in .NET 4.0, wird also nicht auf früheren Versionen arbeiten. Verwenden Sie '<%=%>' anstelle von '<%:%>'. – Oded