标签: windows-runtime

模拟WinRT的框架?

感觉就像我必须遗漏一些东西,但是当我为WinRT代码编写单元测试时,我无法找到任何可以使用的模拟对象框架.那里有任何支持WinRT的模拟框架吗?

我知道MoqRT,但据我所知,它在构建时执行codegen(虽然通过一个脆弱的声音集成,这不是实际构建过程的一部分),但它感觉更像是一个hack而不是一个实现.

DynamicMethod(轻量级代码生成背后的类)显然在WinRT中不可用.但似乎支持表达式树,包括它们的编译方法; 所以似乎模拟对象框架应该是可行的.

那里有任何WinRT模拟框架吗?

mocking windows-runtime

21
推荐指数
2
解决办法
2781
查看次数

WinRT-XAML中是否有WrapPanel(而不是WrapGrid)控件?

XAML StackPanel在单个方向上并排对齐控件.A WrapPanel类似但是TextWrapping="Wrap"在XAML中TextBox,当达到相应的高度或宽度时,控件"包裹"到下一列或行.

在此输入图像描述

类似但不一样的是,WrapGrid包装内容,但是在统一的网格中.虽然VariableSizedWrapGrid允许容器中的不同物品.这两种都不WrapGrids能用在外面ItemsControl.所以,他们被取消资格.

当开发人员在Visual Studio中查看他们的本机XAML工具箱时,没有WrapPanel.WPF开发人员有一个WrapPanel他们可能正在寻找这个通用工具来解决他们的场景.所以,我要问:

有没有人知道XAML-WinRT中的WrapPanel?(虚拟化的那个怎么样?)

windows-8 windows-runtime winrt-xaml windows-store-apps

21
推荐指数
1
解决办法
5525
查看次数

添加滑动手势以打开SplitView窗格

我正在尝试向UWP的SplitView控件(又名"汉堡包菜单")添加滑动手势,类似于Pivot控件的左/右滑动.如何设置手势以更改其显示模式?

在iOS 8及更高版本中,我可以使用UISplitViewController并设置presentsWithGesture属性来做到这一点,但在WinRT中没有类似的东西.

现在看完这篇博客后:http://blogs.msdn.com/b/cdndevs/archive/2015/07/10/uwp-new-controls-part-2-splitview.aspx,我意识到有DisplayMode属性在SplitView控件中,我应该使用VisualStateManager来改变它的状态但是如何使用vsm来平移左侧窗格?我不知道这可以通过vsm实现.

任何帮助/提示将不胜感激.

c# windows-runtime winrt-xaml windows-10 uwp

21
推荐指数
1
解决办法
8362
查看次数

WinRT和.Net Framework

在WinRT演示之后,我对.net框架在Microsoft开发堆栈中的作用感到困惑.

是否有必要开发WinRT应用程序?

.net architecture windows-runtime

20
推荐指数
1
解决办法
5847
查看次数

是否可以在Windows 8 metro/winRT中使用新的JIT编程语言?

让我们说我想创建一种新的编程语言或者使用MS不支持的某种语言(Haskell,Java ......等等),但希望能够对Windows 8 metro/winRT进行编码.

我知道Metro UI中的所有应用都是沙盒.
我知道我可以用原生C++编程,所以我假设我也可以在C或汇编中完成.
但:

  1. 是否有可能创建一个可以动态生成汇编代码的JIT - 比如CLR JIT-而不会破坏沙盒限制?
  2. 假设我只使用Metro沙箱中允许的API,是否可以不使用XAML作为UI界面? - 我可以直接使用Direct2D/DirectX吗?

jit programming-languages microsoft-metro windows-8 windows-runtime

20
推荐指数
4
解决办法
3115
查看次数

什么取代了WinRT中的CommandManager?

我开始使用Metro风格的应用程序(我知道我们不应该将它称为Metro,但我永远不会记得它应该被称为...),而我正在实现一个DelegateCommand用于MVVM 的类.在WPF中,ICommand.CanExecuteChanged事件通常像这样实现:

    public event EventHandler CanExecuteChanged
    {
        add { CommandManager.RequerySuggested += value; }
        remove { CommandManager.RequerySuggested -= value; }
    }
Run Code Online (Sandbox Code Playgroud)

但是这个CommandManager类在WinRT中不存在......还有别的东西吗?或者我们是否应该自己明确触发此事件?

c# icommand windows-8 windows-runtime

20
推荐指数
1
解决办法
5390
查看次数

如何在Windows 10 Universal中获取设备的唯一标识符?

这是我的旧实现,用于获取Windows Universal 8.1的唯一DeviceID,但类型HardwareIdentification不再存在.

    private static string GetId()
    {
        var token = HardwareIdentification.GetPackageSpecificToken(null);
        var hardwareId = token.Id;
        var dataReader = Windows.Storage.Streams.DataReader.FromBuffer(hardwareId);

        byte[] bytes = new byte[hardwareId.Length];
        dataReader.ReadBytes(bytes);

        return BitConverter.ToString(bytes).Replace("-", "");
    }
Run Code Online (Sandbox Code Playgroud)

c# windows-runtime win-universal-app windows-10

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

UWP编译绑定x:Bind产生内存泄漏

在开发UWP应用程序时,我最近发现了很多内存泄漏,导致我的页面被GC收集.我的页面上有一个ContentPresenter,如:

<ContentControl Grid.Column="0" Grid.Row="1" Content="{x:Bind ViewModel.Schedule, Mode=OneWay}">
</ContentControl>
Run Code Online (Sandbox Code Playgroud)

删除内容后,或用动态{Binding}替换它 - 当我从中导航时收集页面.否则它会留在内存中.是错误还是我做错了什么?有没有办法释放并清除导航时的所有绑定?

更新: 它似乎被说成是微软内部的一个已知的问题在这里.但是,就我自己的测试/应用程序使用情况而言,x:Bind保留的数据仍会在一段时间后收集,例如,当您导航到相同的页面或创建相同的控件一段时间.我可以看到创建了新对象,但在某些时候收集了旧对象.

所以对我而言,它似乎并不是导致内存不足的严重问题,它只是不允许像动态绑定那样快速收集对象.

c# xaml windows-runtime winrt-xaml uwp

20
推荐指数
2
解决办法
2267
查看次数

无法激活Windows应用商店应用(Visual Studio 2015,Windows 10版本1511)

今天我将Windows 10 PC更新为Threshold 2.除了Visual Studio拒绝运行我的任何通用Windows 10项目(包括新项目)之外,更新还不错.

当我尝试运行应用程序时,我收到此消息:

无法激活Windows应用商店应用"{App}".{App name} .exe
进程已启动,但激活请求失败,错误为"应用程序
未启动".

我尝试了一切:

  • 修复/卸载然后安装Visual Studio
  • 清理解决方案
  • 删除了'bin'和'obj'文件夹
  • 检查SDK/Visual Studio更新
  • 检查是否有app.json(没有)
  • 更新了Nuget包
  • 尝试了不同的项目(包括新的空白项目 - 相同的错误)
  • 重置Windows(从设置屏幕)

额外信息

  • Visual Studio安装在第二个(存储)驱动器上,因为我的主驱动器是一个小型SSD.
  • 升级前一切正常.

c# visual-studio windows-runtime windows-10 uwp

19
推荐指数
2
解决办法
6384
查看次数

获取UWP app文件夹中的所有文件

对于UWP,可以轻松地将app本地文件夹中的所有文件作为:

IReadOnlyList<StorageFile> files = await ApplicationData.Current.LocalFolder.GetFilesAsync();

您现在可以迭代文件列表,甚至可以获得有关各个文件的更多信息.

我想为app文件夹添加类似的all-file-getter,例如,考虑存储app *.png文件的/ Assets文件夹.具有已知名称的单个文件没有问题; 我可以很容易地提到它:

StorageFile.GetFileFromApplicationUriAsync(new Uri(@"ms-appx:///Assets/StoreLogo.png"))

因此,我的问题是,在app文件夹中获取所有文件是否类似,例如/ Assets文件夹?从逻辑上讲,它应该是类似StorageFile.GetFilesFromApplicationFolderUriAsync(new Uri(@"ms-appx:///Assets"))但不知道如果存在上面显示的LocalFolder的等效物.

c# windows-runtime windows-10 uwp

19
推荐指数
1
解决办法
2万
查看次数