本文整理匯總了C#中Microsoft.Xna.Framework.Media.MediaLibrary.Where方法的典型用法代碼示例。如果您正苦於以下問題:C# MediaLibrary.Where方法的具體用法?C# MediaLibrary.Where怎麽用?C# MediaLibrary.Where使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Microsoft.Xna.Framework.Media.MediaLibrary
的用法示例。
在下文中一共展示了MediaLibrary.Where方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: ReadStoryFile
/// <summary>
/// 讀取指定的story.
/// </summary>
/// <param name="storyName">story名稱.</param>
/// <param name="userStore">如果參數為null, 創建一個新的.</param>
internal static void ReadStoryFile(string storyName, IsolatedStorageFile userStore = null)
{
if (userStore == null)
{
userStore = IsolatedStorageFile.GetUserStoreForApplication();
}
using (IsolatedStorageFileStream fileStream = userStore.OpenFile(storyName + ".xml", System.IO.FileMode.Open))
{
XDocument xdoc = XDocument.Load(fileStream);
var picturesLibrary = new MediaLibrary().Pictures;
// Load all photos.
foreach (XElement photoElement in xdoc.Root.Elements())
{
try
{
Photo photo = new Photo()
{
Name = photoElement.Attribute("Name").Value,
};
string photoDurationString = photoElement.Attribute("PhotoDuration").Value;
int photoDuration = int.Parse(photoDurationString);
photo.PhotoDuration = TimeSpan.FromSeconds(photoDuration);
XElement transitionElement = photoElement.Element("Transition");
if (transitionElement != null)
{
photo.Transition = TransitionBase.Load(photoElement.Element("Transition"));
}
Picture picture = picturesLibrary.Where(p => p.Name == photo.Name).FirstOrDefault();
if (picture == null)
{
// 如果找不到原文件,可能已經被刪除了
// TODO: 我們需要記錄錯誤嗎? 我們是繼續下一個圖片還是拋出異常?
continue;
}
photo.ThumbnailStream = picture.GetThumbnail();
App.MediaCollection.Add(photo);
}
catch
{
// TODO: 我們需要記錄錯誤嗎? 我們是繼續下一個圖片還是拋出異常?
continue;
}
}
}
}