Tag: windows runtime

将UWP库加载到.NET Framework应用程序中

有许多文章( codeproject , blog1 , blog2 , 论坛 )将WinRT库用于Windows 8中的.Net Framework控制台应用程序。 我在Windows 10中尝试使用UWP。但未能成功。 我努力编译没有错误,但它在运行时发生BadImageFormatException 。 这就是我所做的。 使用.NET Framework 4.6.1目标创建控制台应用程序。 编辑.csproj文件以添加10.0 参考以下三个库。 c:\ Program Files(x86)\ Windows Kits \ 10 \ UnionMetadata \ Windows.winmd(显示Windows运行时1.4) c:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETCore \ v4.5.1 \ System.Runtime.WindowsRuntime.dll(显示4.0.10.0) c:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETCore \ […]

如何使用C#为我的WinRT应用程序生成MD5哈希码?

我正在创建MetroStyle应用程序,我想为我的字符串生成MD5代码。 到目前为止我用过这个: public static string ComputeMD5(string str) { try { var alg = HashAlgorithmProvider.OpenAlgorithm(“MD5”); IBuffer buff = CryptographicBuffer.ConvertStringToBinary(str, BinaryStringEncoding.Utf8); var hashed = alg.HashData(buff); var res = CryptographicBuffer.ConvertBinaryToString(BinaryStringEncoding.Utf8, hashed); return res; } catch (Exception ex) { return null; } } 但它抛出System.ArgumentOutOfRangeException类型的exception,并显示以下错误消息: No mapping for the Unicode character exists in the target multi-byte code page. (Exception from […]

使MediaElement支持更多video编解码器

有没有办法让MediaElement支持更多的video编解码器,如mkv , flv , mov等? 如果没有,是否有任何其他控件支持更多的video编解码器?

Windows运行时上ListView的随机访问数据虚拟化

我正在实现一个列表,其中可以轻松拥有10,000张小图片。 实际用例显示video的缩略图列表,以便您可以逐帧滚动video。 我在video中每2/3秒钟将video的缩略图放入列表中。 我需要支持很长的video(例如1小时video)。 所以虚拟化选项: http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh780657.aspx 我试过“增量数据虚拟化”,这对我来说消耗太多内存,因为图像只能通过流来引用,我最终会打开10,000个流。 由于内存不足,这会导致Windows Phone应用程序崩溃。 现在我想尝试“随机访问数据虚拟化”。 我看到如何实现接口IObservableVector, INotifyCollectionChanged (是 b / c 不起作用)。 棘手的部分是如何处理图像和加载图像。 加载图像是一种异步方法。 此外,我认为这个解决方案应该有占位符,就像MSFT文档所说的那样“这种类型的数据虚拟化的一个例子经常出现在照片查看应用程序中。该应用程序显示占位符图像,而不是让用户等待下载相册中的所有照片当检索到每个图像时,应用程序用实际照片的渲染替换该图像的占位符元素。即使所有图像都没有被下载和显示,用户仍然可以平移并与该集合交互。 查看占位符的MSFT示例 – 使用“ContainerContentChanging”似乎是一条重要的路径。 我在这里猜测有一种方法可以在这个事件中处理图像,并开始加载图像。 https://code.msdn.microsoft.com/windowsapps/ListViewSimple-d5fc27dd 将其归结为一个问题 – 在哪里可以处理图像流并为随机访问虚拟化列表开始加载图像? 这是照片应用程序中非常常见的场景,在iOS中非常容易,但似乎没有人在Windows运行时完成它。

Sqlite扩展无法按预期工作

我正在开发一个WinRT应用程序。 我想使用sqlite-net-extensions来支持OneToMany , ManyToMany 。 using SQLiteNetExtensions.Attributes; using SQLite; [Table(“WorkFlow”)] public class Workflow { [PrimaryKey, AutoIncrement] public int WorkflowId { get; set; } public string Name { get; set; } public int Revision { get; set; } [OneToMany] public List Steps { get; set; } } [Table(“Step”)] public class Step { public string Type { […]

使用某些平台上存在的实际类型处理PCL中的缺失类型

这可能是某个问题的答案,但我似乎无法找到答案。 我正在开发一个将Mono.Data.Sqlite移植到Windows Phone和Windows Store的项目,但当然这也需要移植System.Data。 我决定使用PCL,因为这样就不需要为平台单独组装了(我也检查了Silverlight,但这不是优先考虑的事情)在这样做的过程中,除了一种类型之外,我设法获得了大部分function – DBNull 🙁 这就是问题所在,WP和SL声明了DBNull,但WinRT却没有。 是否可以在单个程序集中执行某些操作以在其存在的平台(WP和SL)上使用本机DBNull并在WinRT上使用自定义实现? 我似乎没有办法做到这一点。 我查看了其他解决方案:(a)为SL和WP创建PCL并排除DBNull类型和WinRT的另一个程序集,或者(b)创建一个引用WP和SL的自定义程序集的单个程序集,其类型转发到DBNull的本机实现,以及用于实现DBNull的RT的程序集。 有没有其他方法,或哪一个更好?

如何播放需要身份validation的video流?

我有一个Windows应用程序(C#/ XAML),它与REST服务进行通信。 在某些时候,我需要播放此服务提供的video流。 如果我只是将流URI分配给MediaElement.Source属性,则它不起作用,因为需要对请求进行身份validation。 我需要自定义MediaElement控件发送的请求,以便添加cookie,凭据和一些其他自定义标头,但我找不到任何方法或属性来执行此操作。 我该怎么做? 它甚至可能吗?

RunAsync – 如何等待UI线程上的工作完成?

等待Dispatcher.RunAsync时,将在计划工作时进行继续,而不是在工作完成时进行。 我怎么能等待完成的工作? 编辑 我的原始问题假设过早延续是由API的设计引起的,所以这是真正的问题。 在使用异步委托等待Dispatcher.RunAsync ,在委托代码中使用await时,会在遇到await时发生延续,而不是在工作完成时。 我怎么能等待完成的工作? 编辑2 您可能需要分派已经在UI线程上工作的一个原因是解决细微的时序和布局问题。 对于视觉树中的元素的大小和位置的值来说,通常是非常常见的,并且用于稍后的UI迭代的调度工作可以帮助。

Windows 8中不存在WebClient类

我想使用HTTP Web服务,我已经为wp7开发了一个应用程序。 我使用WebClient类,但我不能将它用于Windows 8(“错误:无法找到类型或命名空间”)。 我还能用什么? 你能给我一个代码示例吗? 当命名空间不存在时,Microsoft是否有一个站点可以提供帮助?

以编程方式设置图像的来源(XAML)

我正在开发Windows 8应用程序。 我需要知道如何以编程方式设置图像的来源。 我认为Silverlight方法可行。 但事实并非如此。 有人知道怎么做这个吗? 以下内容不起作用: string pictureUrl = GetImageUrl(); Image image = new Image(); image.Source = new Windows.UI.Xaml.Media.Imaging.BitmapImage(new Uri(pictureUrl, UriKind.Relative)); image.Stretch = Stretch.None; image.HorizontalAlignment = Windows.UI.Xaml.HorizontalAlignment.Left; image.VerticalAlignment = Windows.UI.Xaml.VerticalAlignment.Center; 我得到一个exception,说:“给定的System.Uri无法转换为Windows.Foundation.Uri。” 但是,我似乎无法找到Windows.Foundation.Uri类型。