일부지도가있는 Silverlight 응용 프로그램이 있고이 응용 프로그램이 실행중인 동일한 페이지에지도 관련 값을 설명하는 표가 있습니다. 지도에서 아이콘 위로 마우스를 가져 가면 해당 ID가있는 행이 강조 표시됩니다. 그게 가능한가? ASP MVC에서 간단한 ASP 테이블을 사용하고 있습니다.Silverlight 응용 프로그램에서 ASP 페이지에서 자바 스크립트를 트리거하는 방법이 있습니까?
실버
private void MapClick(object sender, RoutedEventArgs e)
{
for (int i = 0; i < 4; i++)
{
System.Windows.Controls.Primitives.ButtonBase button = (System.Windows.Controls.Primitives.ButtonBase)VisualTreeHelper.GetChild(RegionCanvas, i);
if (button.IsPressed)
HtmlPage.Window.Invoke("highlightRow",(int)button.DataContext);
}
}
내가 뭔가 잘못하고 있어요 경우
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<script type="text/javascript">
function highlightRow(id) {
id = "porto" + id;
document.getElementById(id).setAttribute("bgColor", "#123456");
}
</script>
<%try{ %>
<h2><%:(String) Model.FirstOrDefault().estado%></h2>
<%} %>
<%catch (Exception e) { }%>
<table id="tblLayout">
<tr>
<td><div style="height:300px">
<object data="data:application/x-silverlight-2,"
type="application/x-silverlight-2" height="300px" style="width: 400px">
<param name="source" value="/ClientBin/MiniSIG.xap"/>
<param name="onError" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="3.0.40818.0" />
<%try{ %>
<param name="initParams" value="startPage=<%:(String) Model.FirstOrDefault().estado%>" />
<%} %>
<%catch (Exception e) { }%>
<%finally{
if(Model.FirstOrDefault() == null){%>
<param name="initParams" value="startPage=main" />
<%} }%>
<param name="autoUpgrade" value="true" />
<a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40818.0" style="text-decoration:none">
<img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
</a>
</object>
</div> </td>
<td><table>
<tr>
<th>
ID do Porto
</th>
<th>
Nome
</th>
<th>
Cidade
</th>
<th>
ID da Cidade
</th>
<th>
Tipo
</th>
</tr>
<% foreach (var item in Model) { %>
<tr id="porto<%: item.idporto %>">
<td>
<%: item.idporto %>
</td>
<td>
<%: Html.ActionLink(item.nome, "../Portos/Details/"+item.idporto)%>
</td>
<td>
<%: item.municipio %>
</td>
<td><%: item.idcidade %></td>
<td>
<%: item.tipo %>
</td>
</tr>
<% } %>
</table></td>
</tr>
</table>
<p>
<%: Html.ActionLink("Voltar", "Index") %>
</p>
</asp:Content>
당신이 말해 줄 수 영문 :
는 AnthonyWJones의 지시에 따라,이했다?를 나는 그것을 실행하려했지만 작동하지 않았다.
이상하게 보이는 한 가지 점은 올바르게 보이지 않는'(int) button.DataContext'를 사용하는 것입니다. 당신은 "효과가 없다"라고 확장 할 수 있습니다. 그것은 무엇을합니까? javascropt 디버깅을 시도 했습니까? 예외가 발생합니까? – AnthonyWJones