2016-09-28 80 views
5

我正在将我的游戏从完整桌面移植到UWP。我需要解决的一件事是如何将纹理,着色器等加载到UWP版本的游戏中。如何在UWP项目中查看文件更改?

在桌面版本中,我使用FileSystemWatcher来执行此操作,但UWP中不存在FileSystemWatcher,即使在我完全控制的目录中也是如此。

UWP是否有等价物?

使用UWP中有限的API集来实现这一点的最佳方式是什么?

回答

8

UWP是否有等价物?

您可以为查询的存储文件订阅ContentChanged event

例如:

List<string> fileTypeFilter = new List<string>(); 
fileTypeFilter.Add(".txt"); 
fileTypeFilter.Add(".png"); 
var options = new Windows.Storage.Search.QueryOptions(Windows.Storage.Search.CommonFileQuery.OrderByName, fileTypeFilter); 
var query = ApplicationData.Current.LocalFolder.CreateFileQueryWithOptions(options); 
//subscribe on query's ContentsChanged event 
query.ContentsChanged += Query_ContentsChanged; 
var files = await query.GetFilesAsync(); 

private void Query_ContentsChanged(Windows.Storage.Search.IStorageQueryResultBase sender, object args) 
{ 
    //TODO: 
} 

这种搜索并返回所有.txt和png格式的应用程序的本地文件夹中的文件,如果在查询中的文件被添加到,删除或修改,本次活动将是被解雇。

相关问题