Frage

Ich mache eine Silverlight-Anwendung, dass, wenn der Benutzer den Mauszeiger über einige Tab Bars tut, kann er / sie eine Vorschau der Seite wird es eine Verknüpfung zu werden. Der Grund für diese Vorschau ist, dass nur eine visuelle Miniatur der Seite, die oft genug ist, die letzlich für den Benutzer zu machen. Wie kann ich in Silverlight eine Kontrolle machen, die einfach eine Webseite anzeigt, vorzugsweise verkleinert?

Prost

Nik

War es hilfreich?

Lösung

Wie Sie wahrscheinlich wissen, gibt es einige Fragen im Zusammenhang mit Domänengrenzen in Silverlight überqueren. Probleme, die auf Stapelüberlauf zum Beispiel diskutiert wurden.

Dies ist relevant, weil im Allgemeinen können Sie nicht Web-Ressourcen in anderen Domänen anfordern, die Sie benötigen würden hier zu tun.

Eine Möglichkeit, die ich gesehen habe, dies zu umgehen ist es, einen Web-Service zu nutzen, die nicht die gleiche Einschränkung haben. So können Sie einen Web-Service zu erstellen, die ein byte [] des Bildes belichtet und haben den Web-Service haben die Anrufe um das Bild abzurufen und es zurück zu Silverlight zu senden.

Wenn Sie das Bild Byte haben [] Sie, dass in einem asynchronen Aufruf lesen können, und stellen Sie die Bildquelle wie folgt aus.

BitmapImage thumb;
using (MemoryStream stream = new MemoryStream(imgArray))
{
    thumb = new BitmapImage();
    thumb.SetSource(stream);
}

Die andere Frage ist, wie die Miniaturansicht zu erzeugen, für dass Sie google , gibt es einige Projekte, die Ihnen zeigen, wie und einige öffentliche Web-Services, die es für Sie tun. Amazon ist ein solches Beispiel.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top