2012-02-07 10 views
7

mój projekt jest Silverlight projekt navighation (w przeglądarce) chcę, aby przejść do adresu URL, takich jak:nawigacji i dodaj dane z silverlight

System.Windows.Browser.HtmlPage.Window.Navigate(new Uri(string.Format("http://{0}: 
{1}/ReportProject.aspx#/Supplies/RequestGoods/RequestGoodsDashboard", 
Application.Current.Host.Source.Host, 
Application.Current.Host.Source.Port)), "_blank", ""); 

i wysyłanie wielu parametrów z metody post do strony

cel

jak mogę to zrobić?

Odpowiedz

7

Nie możesz Navigate() i nadal używać POST. Navigate to odpowiednik kliknięcia łącza lub wpisania adresu URL na pasku adresu, który wywołuje czasownik GET.

Aby użyć POST, można zamiast tego użyć Silverlight przeglądarkę współdziałanie programowo utworzyć HTML <form>, ustawić jego atrybut action do prawidłowego adresu URL, ustawić jego atrybut target do "_blank", dodać kilka <input type="hidden"> pól, ustaw ich nazwy i wartości oraz następnie submit() formularz.

// Get document and body 
var doc = System.Windows.Browser.HtmlPage.Document; 
var body = doc.Body; 

// Create a <form> element and add it to the body 
var newForm = doc.CreateElement("form"); 
newForm.SetAttribute("action", targetUrl); 
newForm.SetAttribute("method", "post"); 
body.AppendChild(newForm); 

// TODO: doc.CreateElement("input"); 
// TODO: SetAttribute("type", "hidden"); 
// TODO: SetAttribute("name", someName); 
// TODO: SetAttribute("value", someValue); 
// TODO: newForm.AppendChild() 

newForm.Invoke("submit"); 
+0

dziękuję, to było przydatne – Masoomian

Powiązane problemy