Articles of uwp

如何在UWP XAML MVVM应用程序上接收最简单的Windows消息?

我的大问题:我需要从Windows 10桌面应用程序(或服务)发送信号到同一OS实例/机器上的 UWP XAML MVVM应用程序。 我在全局命名空间中使用了命名的信号量,但是这些在UWP上完全不起作用(出于安全原因,可能是devise的)。 没有快乐。 我尝试了UWP套接字, 只有当客户端在远程计算机上时,它才能与UWP一起作为监听器。 这也是一个安全devise的决定吗? 不知道。 豁免应用程序从回送限制没有帮助,因为这只适用于如果UWP应用程序是提出请求的客户端。 没有快乐。 好的,所以我留下了一个Windows消息发送到操作系统上的特定窗口… 我的testing应用程序是GitHub上UWP的AdventureWorks示例。 我如何得到这个来处理从不同进程发送的Windows消息? 我很难过 以下是我的testing客户端代码。 问题:如何在AdventureWorks中处理此消息? 将代码更改保持在最低限度是非常重要的,但目前我陷入困境,不知道要继续。 (这似乎是一个严密的秘密…) 请帮忙! 请示例代码。 class Program { [DllImport("user32.dll")] public static extern IntPtr FindWindow(string lpClassName, String lpWindowName); [DllImport("user32.dll")] public static extern int SendMessage(IntPtr hWnd, uint wMsg, IntPtr wParam, IntPtr lParam); [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)] […]

在AppBar中隐藏省略号

在UWP应用程序中创buildAppBar或CommandBar时,总是在控件旁边隐藏一个省略号,如下所示: 我不希望它在我的应用程序,但我还没有发现任何方法/ AppBar内的属性,将帮助我摆脱它。 这应该是可能的,因为许多默认的Windows 10应用程序没有它。 例如,下面的主菜单栏上没有省略号: 是否可以使用AppBar隐藏省略号,还是必须使用SplitView或其他控件来实现这个?

如何以编程方式更改Win 8.1或Win 10 UWP应用程序的背景主题?

我有一个Windows Phone 8.1的应用程序和它的UWP版本。 我想在Windows中更改它的dynamic背景。 用例如下: 启动应用程序,背景主题是黑暗的。 按电话上的主页button 将背景主题更改为浅色 回到应用程序(基本上从后台切换到它) 应用程序的主题会自动更改为新的主题 我希望这样做,没有重新启动。 我已经在其他应用程序中看到过,所以它可能有某种程度上,但我不明白。 如果需要重新启动,那么解决schemeB也可以。 谢谢。

诊断已翻译的UWP堆栈跟踪的步骤

所以我在发布模式下从我的UWP窗口应用程序收到一个堆栈跟踪。 我现在已经使用windbg将所有地址转换为方法名称。 我现在有这个输出: System.InvalidOperationException: InvalidOperation_EnumFailedVersion. For more information, visit http://go.microsoft.com/fwlink/?LinkId=623485 at MyApp!<BaseAddress>+0x7710b7 – MyApp!System::Func$4<System::__Canon,System::__Canon,System::__Canon,System::__Canon>.BeginInvoke+0x27 | (00b710c0) MyApp!System::Func$4<System::__Canon,System::__Canon,System::__Canon,System::__Canon>.Invoke at MyApp!<BaseAddress>+0x771125 – MyApp!System::Func$3<System::__Canon,System::Int32,System::__Canon>.GetThunk+0x45 | (00b71130) MyApp!System::Func$3<System::__Canon,System::Int32,System::__Canon>.ReverseInvokeImpl at MyApp!<BaseAddress>+0x7710d5 – MyApp!System::Func$4<System::__Canon,System::__Canon,System::__Canon,System::__Canon>.Invoke+0x15 | (00b710e0) MyApp!System::Func$3<System::__Canon,System::Int32,System::__Canon>.GetThunk at MyApp!<BaseAddress>+0x85d8c9 – MyApp!$58_System::Net::Http::HttpContent::<>c__DisplayClass0.<ReadAsStringAsync>b__1$catch$0+0x16 | (00c5d8f2) MyApp!$58_System::Net::Http::HttpContent::<>c__DisplayClass0.<ReadAsStringAsync>b__1$catch$1 at MyApp.Collections.ViewModelCollection.<PrependListOfViewModelsAsync>b__24_1(ViewModels.ViewModel nt) at MyApp!<BaseAddress>+0x784241 – MyApp!$45_System::Collections::Generic::Dictionary$2<$76_Microsoft::CSharp::RuntimeBinder::Syntax::OperatorKind,System::__Canon>.Remove+0x81 | (00b84310) MyApp!$45_System::Collections::Generic::Dictionary$2<$76_Microsoft::CSharp::RuntimeBinder::Syntax::OperatorKind,System::__Canon>.Resize at MyApp!<BaseAddress>+0x786623 – MyApp!$45_System::Collections::Generic::Dictionary$2<$54_Newtonsoft::Json::Serialization::DefaultSerializationBinder::TypeNameKey,System::__Canon>.Remove+0x3 | (00b86790) MyApp!$45_System::Collections::Generic::Dictionary$2<$54_Newtonsoft::Json::Serialization::DefaultSerializationBinder::TypeNameKey,System::__Canon>.Resize […]

了解Windows通用应用程序(UWP)中的扩展执行会话

我努力得到扩展的执行会话为我的Windows通用应用程序工作。 我试图达到的是以下情况。 用户希望通过蓝牙将手机与设备连接。 目前,无论何时屏幕closures或来电或用户最小化应用程序,连接失败,我们重新启动它恢复。 我想为这个正在进行的连接启用扩展执行,这样应用程序即使在最小化(挂起)时也能继续工作。 我想我需要的ExtendedExecutionReason.Unspecified ,因为它应该允许我的应用程序运行长达10分钟的暂停状态(这是绰绰有余我的目的)。 但是,连接总是似乎挂起失败(当我尝试改变我的应用程序的状态从debugging器使用VS的应用程序生命周期下拉列表中,我得到撤销ExtendedExecutionRevokedReason.SystemPolicy )。 我已经启用了我的应用程序的所有电池和后台权限,但仍然不好。 我的代码大致如下: … (on begin connection) ClearExtendedExcecution(); DisplayRequest dr = new DisplayRequest(); var newSession = new ExtendedExecutionSession { Reason = ExtendedExecutionReason.Unspecified, Description = "Pair device" }; newSession.Revoked += SessionRevoked; ExtendedExecutionResult result = await newSession.RequestExtensionAsync(); dr.RequestActive(); try { switch (result) { case ExtendedExecutionResult.Allowed: m_extendedExecutionSession = newSession; // […]

System.Serializable属性在Windows 10 UWP应用程序?

在尝试将开源库(Aforge.net)移植到UWP时,我发现System.Serializable属性似乎不存在。 UWP的参考工作有点不同,我仍然试图围绕这些变化,所以我希望我只是缺less一些简单的东西。 我的问题是,有人可以确认是否System.Serializable属性工作/应该在UW​​P应用程序中工作? 我试图通过MSDN和其他各种谷歌资源,但无法find任何证据的方式。 任何帮助是极大的赞赏。 更新 它看起来像我可能需要使用DataContract / DataMember属性,而不是像这里提到的便携库一样,可序列化: 可移植类库:build议replace[Serializable] 思考?

通用Windows平台上的Exif标签C#

如何将标签添加到UWP(通用Windows平台)/ Windows Phone 10上的jpeg图片.WindowsBase和PresentationCore不可用。

通用Windows 10 WebView – 如何清除/禁用caching?

清理UWP应用程序中的WebViewcaching时遇到了很多问题。 如果我编辑从我的HTML页面链接的JS文件的内容,我不能将更改到我的应用程序,除非我重新安装应用程序。 静态WebView.ClearTemporaryWebDataAsync()方法似乎不工作。 我也尝试添加标头的请求来禁用caching: private void reloadPage() { string url = getUrl(); HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, new Uri(url)); request.Headers.Add("Cache-Control", "no-cache, no-store, must-revalidate"); request.Headers.Add("Pragma", "no-cache"); myWebView.NavigateWithHttpRequestMessage(request); } 我也尝试了下面的一个平底船(我不确定这是否影响WebView的caching行为),但仍然没有喜悦: private void onWebviewLoaded(object sender, RoutedEventArgs e) { Windows.Web.Http.Filters.HttpBaseProtocolFilter myFilter = new Windows.Web.Http.Filters.HttpBaseProtocolFilter(); myFilter.CacheControl.WriteBehavior = Windows.Web.Http.Filters.HttpCacheWriteBehavior.NoCache; myFilter.CacheControl.ReadBehavior = Windows.Web.Http.Filters.HttpCacheReadBehavior.Default; WebView.ClearTemporaryWebDataAsync().AsTask().Wait(); reloadPage(); } 任何帮助将非常感激! 编辑(14/12/15):我发现添加标头的请求(如上面的第一个代码示例) 确实有效,但只有在应用程序的生命周期已经到位,因为安装。 这是有道理的,因为它只是说不caching这个特定的请求 – 它仍然可以使用旧的caching版本。 […]

如何检测用户何时单击WebView控件中的超链接?

我试图检测用户何时点击从Windows 10的WebView控件中的超链接。有什么办法来检测此事件吗?

Windows.ApplicationModel.LockScreen名称空间是否可供非信息亭使用?

Windows.ApplicationModel.LockScreen命名空间的MSDN文档声称:“您可以创build一个充当锁屏的应用程序,从而实现更好的用户个性化”。 我有兴趣为Windows 10 Mobile创build自定义locking屏幕。 不过,我追求进一步的文档只产生了一篇关于创buildWindows 10桌面信息亭应用程序的文章 。 所以,我的问题很简单 – 用这些类创build一个自定义的Windows 10 Mobile锁屏实际上是可能的吗?