在UWP Xaml中创建和填充NxN网格

我正在尝试创建一个UWP益智游戏,我想将图片分成n个部分,然后在网格中显示这些部分。 我的问题是,如何强制某种NxN风格。 现在我必须最大化窗口以便看到3×3网格,如果我收缩任何一边,它将收敛到2列,1列网格。 有办法处理这个吗? 这就是我所做的,我知道RowDefinition现在是手动的,直到我找到一个更好的方法来做到这一点。 这是两个示例图像:

如何将字节数组转换为任何类型

好吧伙计们,我看到有人询问如何将字节数组转换为int , string , Stream等等的问题……而且答案都各不相同,我个人没有找到任何满意的答案。 所以这里有一些我们想要将字节数组转换为的类型。 UnityEngine.Font可以接收ttf数据。 UnityEngine.Testure2D ,它可以从图像文件中获取数据,如.png , .jpg等… 我们如何将字节数组转换为String , UnityEngine.Testure2D,UnityEngine.Font , Bitmap等… 填充字节数组的数据必须来自一个文件类型,其数据可以通过我们要将字节数组转换为的类型来管理? 这目前可能吗? 任何帮助,将不胜感激。

将RTSP存储到文件位置

我能够通过C#Winform应用程序在Windows 7 64位机器上流式传输rtsp。 这是我使用的库 – VLCDotNet ,这是播放RTSP流的代码示例: LocationMedia media = new LocationMedia(@”rtsp://192.168.137.73:554/live.sdp”); vlcControl1.Media = media; vlcControl1.Play(); 我想通过点击按钮将流存储到我的PC中的文件中,并使用另一个按钮停止相同的操作。 我如何实现这一目标?

c#httpclient PostAsJson发送GET请求而不是POST

我正在使用HttpClient发布post请求。 我不回来405方法。 在fiddler中捕获跟踪时,它会以GET而不是POST的forms出现! using (var client = new HttpClient()) { var url = AppSettingsUtil.GetString(“url”); var response = client.PostAsJsonAsync(url, transaction).Result; } 我知道异步/等待问题。 这是一个简化的示例来说明问题。 是否有某种web.config或machine.config设置可能会影响这个? 其他请求(通过RestSharp发送)正确发送post 这是小提琴手捕获的内容。 在fiddler中重新运行跟踪也会返回405(正如预期的那样)。 手动将其切换到POST并从fiddler运行。 另外,也许是因为该方法被切换到GET,在fiddler中没有捕获到的身体,我不得不手动粘贴在JSON中 GET /*URL*/ HTTP/1.1 Content-Type: application/json; charset=utf-8 Host: /*host*/ Connection: Keep-Alive

使用C#格式化字符串中的句子

我有一个包含多个句子的字符串。 如何将每个句子中第一个单词的首字母大写。 像单词中的段落格式。 例如,“这是一些代码。代码在C#中。”输出必须是“这是一些代码。代码在C#中”。 一种方法是根据’。’拆分字符串。 然后将第一个字母大写,然后重新加入。 有更好的解决方案吗?

Xamarin表格中的触发活动指标

我的Xamarin.Forms应用程序上有一个图标,当点击它时,我想将其更改为活动指示器。 看起来我应该使用Trigger ,事件触发器看起来不错,但是当我的图像在XAML中声明时,我不确定它是如何组合在一起的? 目前,我在stacklayout底部的XAML中有这个: 单击它时,我想在一段时间内显示此信息,然后触发一些C#function: 我不确定是否最好在XAML中使用触发器配置它,或者我是否可以在XAML中拥有占位符类型项,然后在C#中拥有所有定义?

如何尽可能高效地处理大量并发磁盘写请求

假设下面的方法被.net 4应用程序中的不同线程调用了几千次。 处理这种情况的最佳方法是什么? 了解磁盘是这里的瓶颈,但我希望WriteFile()方法快速返回。 数据可以高达几MB。 我们在谈论线程池,TPL等吗? public void WriteFile(string FileName, MemoryStream Data) { try { using (FileStream DiskFile = File.OpenWrite(FileName)) { Data.WriteTo(DiskFile); DiskFile.Flush(); DiskFile.Close(); } } catch (Exception e) { Console.WriteLine(e.Message); } }

一个Windows服务中的多个服务进程(System.ServiceProcess.ServiceBase)

我有两个服务进程(派生自System.ServiceProcess.ServiceBase ) MyService1和MyService2 。 我正在尝试在Windows服务的Programm.cs的Main()中运行它们。 static void Main() { ServiceBase[] servicesToRun = { new MyService1(), new MyService2() }; ServiceBase.Run(servicesToRun); } 在MyService1和MyService2的OnStart方法中,我写入日志文件,以便我可以告诉它们正在运行。 系统构建良好,我可以安装该服务。 但只有MyService1运行。 MyService2没有做任何事情(即没有启动日志条目)。 当我更改数组中的顺序时: ServiceBase[] servicesToRun = { new MyService2(), new MyService1() } 只有MyService2运行。 为了试图深究这一点,我正在使用一个小工具AndersonImes.ServiceProcess.ServicesLoader( https://windowsservicehelper.codeplex.com/ )来解决您无法在Visual Studio中直接调试Windows服务的限制。 使用此工具,我可以使两个服务MyService1和MyService2一起启动并运行。 但我仍然不知道为什么Windows只运行ServiceBase[] servicesToRun数组中的第一项。 有任何想法吗?

DataGridView行添加了事件

我正在使用DataGridView,我将List绑定到DataSource。 我已经有了正确的列,我准确地映射了字段。 我正在尝试做的是处理一种RowAdded或RowDataBound (就像在aspx GridView中)事件。 我发现的唯一事件是RowsAdded但无论我拥有多少项,它在我第一次绑定时仅被激发4次,而在其他时间激发两次,具有值 e.RowCount:1 e.RowIndex:0 e.RowCount:[n-1] e.RowIndex:1 *其中n是我的物品数量 有没有办法可以找到每个项目的句柄? 编辑:不更改DataSource =绑定方法

C#Threading:竞争条件示例

我正在阅读http://www.mono-project.com/ThreadsBeginnersGuide 。 第一个示例如下所示: public class FirstUnsyncThreads { private int i = 0; public static void Main (string[] args) { FirstUnsyncThreads myThreads = new FirstUnsyncThreads (); } public FirstUnsyncThreads () { // Creating our two threads. The ThreadStart delegate is points to // the method being run in a new thread. Thread firstRunner = new Thread […]