se si vuole semplice visualizzatore di immagini che supporta il multi-touch, ti consiglio di usare il controllo WebBrowser
per visualizzare l'immagine.
Supporta lo zoom multi-touch e lo scorrimento uniforme per impostazione predefinita. Ma è necessario copiare il file nell'archiviazione isolata dalla cartella del progetto. Ecco come ho fatto:
<Grid x:Name="LayoutRoot" Background="Transparent">
<phone:WebBrowser
Name="MyWebBrowserControl"
HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="0" />
</Grid>
IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication();
// if image file does not exist in isolated storage, copy it to there~!
if (!isf.FileExists(filename))
{
StreamResourceInfo sr = Application.GetResourceStream(new Uri(filename, UriKind.Relative));
using (BinaryReader br = new BinaryReader(sr.Stream))
{
byte[] data = br.ReadBytes((int)sr.Stream.Length);
using (BinaryWriter bw = new BinaryWriter(isf.OpenFile(filename, FileMode.OpenOrCreate)))
{
bw.Write(data);
bw.Close();
}
br.Close();
}
}
Dispatcher.BeginInvoke(() => { MyWebBrowserControl.Navigate(new Uri(filename, UriKind.Relative)); });
※ È necessario impostare la Operazione di generazione di file immagine da Content
fonte
2012-02-02 12:43:17
due buone opzioni offerte finora –