标签: windows-runtime

ARM版本的Windows 8只能运行Metro(WinRt)风格的应用吗?

另请参阅:有没有办法编写可在Windows 7和Vista上运行的WinRt(Metro)应用程序?

鉴于Windows 7无法运行WinRT应用程序,我试图了解如何针对Windows 8 on Arm和Windows 7. 据我了解,应用程序只能从App Store安装在ARM版本的Windows 8上.

因此,Arm上的Windows 8可以运行任何WinRT应用程序吗?

arm windows-8 windows-runtime

12
推荐指数
2
解决办法
1761
查看次数

VariableSizedWrapGrid和WrapGrid儿童尺寸测量

双方VariableSizedWrapGridWrapGrid有奇怪的测量-它们测量基础上的第一个项目的所有儿童.

因此,以下XAML将剪切第三个项目.

    <VariableSizedWrapGrid Orientation="Horizontal">
        <Rectangle Width="50" Height="100" Margin="5" Fill="Blue" />
        <Rectangle Width="50" Height="50" Margin="5" Fill="Red" />
        <Rectangle Width="50" Height="150" Margin="5" Fill="Green" />
        <Rectangle Width="50" Height="50" Margin="5" Fill="Red" />
        <Rectangle Width="50" Height="100" Margin="5" Fill="Red" />
    </VariableSizedWrapGrid>
Run Code Online (Sandbox Code Playgroud)

似乎VariableSizedWrapGrid测量第一项,然后其余的孩子用第一项的所需大小进行测量.

任何解决方法?

microsoft-metro windows-8 windows-runtime

12
推荐指数
1
解决办法
7400
查看次数

检测KeyRoutedEventArgs事件中是否按下了修改键

我有以下代码:

public void tbSpeed_KeyDown(object sender, KeyRoutedEventArgs e)
{
    e.Handled = !((e.Key >= 48 && e.Key <= 57) || (e.Key >= 96 && e.Key <= 105) || (e.Key == 109) || (e.Key == 189));
}
Run Code Online (Sandbox Code Playgroud)

有没有办法检测是否正在按任何修改键如Shift?

.net c# xaml windows-runtime uwp

12
推荐指数
2
解决办法
5793
查看次数

Windows Phone 8(仅限C++) - 可以访问设备制造商吗?

目前正在使用纯C++/Direct3D开发Windows Phone 8应用程序.我们现在需要访问设备制造商名称,但似乎只能在C#下使用,根据我的研究,这种类型的应用程序无法访问.

此页面列出了我想要使用的一些电话:http://msdn.microsoft.com/en-us/library/windowsphone/develop/microsoft.phone.info.devicestatus(v = vs.105).aspx.

// If only I could call this line from C++
DeviceStatus.DeviceManufacturer;
Run Code Online (Sandbox Code Playgroud)

无论如何都可以获得这些信息,而无需将应用程序重构为允许基本应用程序为C#的XAML/C++混合应用程序.

c# c++ interop windows-runtime windows-phone-8

12
推荐指数
1
解决办法
1336
查看次数

在异步方法中显示错误消息的更好方法

我们不能awaitcatch块中使用关键字这一事实使得在WinRT中显示来自异步方法的错误消息非常尴尬,因为MessageDialogAPI是异步的.理想情况下,我希望能够写下这个:

    private async Task DoSomethingAsync()
    {
        try
        {
            // Some code that can throw an exception
            ...
        }
        catch (Exception ex)
        {
            var dialog = new MessageDialog("Something went wrong!");
            await dialog.ShowAsync();
        }
    }
Run Code Online (Sandbox Code Playgroud)

但相反,我必须这样写:

    private async Task DoSomethingAsync()
    {
        bool error = false;
        try
        {
            // Some code that can throw an exception
            ...
        }
        catch (Exception ex)
        {
            error = true;
        }

        if (error)
        {
            var dialog = new MessageDialog("Something went wrong!");
            await …
Run Code Online (Sandbox Code Playgroud)

c# modal-dialog try-catch async-await windows-runtime

12
推荐指数
1
解决办法
1860
查看次数

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

Dispatcher.RunAsync工作安排时,等待继续发生时,而不是工作完成时.我怎么能等待完成的工作?

编辑

我的原始问题假设过早延续是由API的设计引起的,所以这是真正的问题.

等待Dispatcher.RunAsync使用异步委托时,await在委托代码中使用,会在await遇到时继续,而不是在工作完成时.我怎么能等待完成的工作?

编辑2

您可能需要分派已经在UI线程上工作的一个原因是解决细微的时序和布局问题.对于可视化树中的元素的大小和位置的值来说,通常是非常常见的,并且用于稍后的UI迭代的调度工作可以帮助.

c# async-await windows-runtime windows-store-apps

12
推荐指数
3
解决办法
2万
查看次数

在WinRT中路径几何剪辑等价

今天,我开始移植创建翻页样品在这里为Windows Phone 7到的WinRT(XAML,C#),以帮助这个问题张贴在堆栈溢出.但在移植过程中,我遇到了页面的剪辑部分.在Windows手机示例中,他们使用路径几何裁剪来剪切页面.但在WinRT中似乎只有矩形几何支持剪切选项.

如何在WinRT中实现类似路径几何剪裁的功能?

您可以从此处下载示例Windows电话代码

请找到我试过的源代码,请下载

在那里请找到类PageTurn.cs,我在下面用代码注释了代码:

void left_PointerEntered(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e)
{
    //_workingOdd.Clip = _oddClipRegion;       
    //_workingEven.Clip = _evenClipRegion;
}
Run Code Online (Sandbox Code Playgroud)

windows-8 windows-runtime winrt-xaml

12
推荐指数
3
解决办法
2639
查看次数

如何关闭Windows Phone 8.1应用程序

在WP7和WP8中,我只需要清除页面中的backstack,然后按Back按钮关闭应用程序.在WP8.1中,我执行Frame.BackStack.Clear(),按Back并且应用程序最小化..如何使用Back按钮将其杀死?

c# xaml windows-phone windows-runtime windows-phone-8.1

12
推荐指数
1
解决办法
9746
查看次数

C++/CX和C++/WinRT可以在同一个项目中使用吗?

本周早些时候,Kenny Kerr 在CppCon 2016 1上展示了C++/WinRT.它是基于Modern的Windows Runtime的标准C++投影.

据我所知,C++/CX编译器/预处理器/代码生成器不接触标准C++代码,而C++/WinRT是标准C++库,这是我天真的解释,C++/CX和C++/WinRT都可以在同一个项目中使用.

问题:

  • 第一件事:我天真的解释是否正确?
  • 如果是这样,C++/CX和C++/WinRT可以在同一个编译单元中使用吗?
  • C++/CX和C++/WinRT的粒度可以混合在一起,以防它们不能驻留在同一个编译单元中?
  • C++/WinRT可以在同一个项目中使用C++/CX实现的类型吗?(我希望这很困难,因为C++/WinRT编译器需要从.winmd元数据生成头,因此依赖于(预)编译器输出.)

如果重要的话,那些问题的答案让我现在可以决定如何将我的C++/CX项目推向未来.


1 为Windows运行时使用标准C++(在YouTube上).

c++ windows-runtime c++-cx win-universal-app c++-winrt

12
推荐指数
2
解决办法
1962
查看次数

为什么pip找不到winrt?

我刚刚买了一台新笔记本电脑,我正在尝试用 python 设置它。我正在使用 python 3.10.0、windows 10、pip v21.3。在大多数情况下,pip 似乎工作正常,我已经使用它来安装多个软件包,例如 pygame。但是,当我尝试安装 winrt 时,出现此错误

C:\Users\matth>pip install winrt
ERROR: Could not find a version that satisfies the requirement winrt (from versions: none)
ERROR: No matching distribution found for winrt
Run Code Online (Sandbox Code Playgroud)

我的旧笔记本电脑仍然能够使用 pip 卸载并重新安装 winrt,没有任何问题,并且 pip 再次适用于我的新笔记本电脑上的其他软件包,但不适用于 winrt。知道问题是什么以及如何解决它吗?

python command-line pip windows-runtime

12
推荐指数
1
解决办法
5653
查看次数