小编Flo*_*ian的帖子

WPF 使用纵横比调整用户控件的大小

我有一个 UserControl 并且必须使用纵横比调整 UserControl 的大小。这意味着:宽:高 = 2:1。目前我正在使用此代码:

    protected override Size ArrangeOverride(Size arrangeBounds)
    {
        if (ActualWidth == 0 || ActualHeight == 0) return arrangeBounds;
        base.ArrangeOverride(arrangeBounds);
        double ratio = 2;

        if (Parent != null)
        {
            var size = new Size(arrangeBounds.Height * ratio, arrangeBounds.Height);

            double containerWidth = ((FrameworkElement)Parent).ActualWidth;
            if (containerWidth < size.Width)
            {
                double newHeight = arrangeBounds.Height * (containerWidth / size.Width);
                canvas.Width = newHeight * ratio;
                canvas.Height = newHeight;
            }
            else
            {
                canvas.Width = size.Height * ratio;
                canvas.Height = size.Height;
            }
        }

        return …
Run Code Online (Sandbox Code Playgroud)

wpf resize aspect-ratio

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

参考SLG1日志

我想要两个日志.记录第一个记录一些基本信息.这是一个自定义日志,因为我需要按特定参数进行过滤.如果第一个日志告诉我有错误,我想保存对更详细的slg1日志的引用并打开该日志.我可以用来显示日志的SLG1日志的唯一标识符是什么?

sap logging abap

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

公共交通请求/响应与 Restful Web 服务

在面向微服务的架构中,大众交通与静态 Web 服务在微服务之间进行通信的用例是什么。

当然,大众运输(MQ)在使用异步通信时具有巨大的优势。但是,当存在同步请求时,大众交通与静态服务相比有何优势?

我知道它有点宽泛。

rest web-services masstransit

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

C#Gameserver架构

我想知道如何写一个"好"的游戏服务器.我有一些想法,但我从来没有制作过服务器,我不想最终编写brainfuck代码.

我知道如何处理TCP-Connections等但我的问题是如何在服务器和客户端之间进行通信.

例如:我写了一个类似TicTacTow的游戏.现在用户点击了一个单元格,我想告诉该服务器.服务器应验证用户是否可以单击该单元并告知客户端.如果服务器说是; 您可以单击客户端将其显示为"X".

现在我的问题:我如何告诉服务器我想要点击该字段.我在这里遇到了另一个问题,他们最终使用了命令模式.但如果我理解正确,我将不得不创建一个实现接口的命令.我序列化该命令的一个实例并将其发送到服务器.服务器执行命令.但我必须解决主要问题:

  1. 如果该命令将tictacto的单元格设置为X.如何告诉服务器他必须传递GameBoard,我需要将单元格设置为X到接口ICommand的Invoke-Method.
  2. 这不是非常不安全吗?我的意思是我可以编写一个命令来删除我的所有文件或停止服务器并将其发送到服务器.我不相信命令模式是个好主意.

所以我正在寻找更好的东西.我只想为我的客户端和服务器提供一个简单易用的架构.有什么好的模式吗?

哦,还有一个问题:你会使用序列化器吗?或者你自己编码数据?

c# design-patterns tcp tcplistener tcpclient

0
推荐指数
1
解决办法
1939
查看次数

使用 CSCore lib 获取 MP3 文件样本数据和信息

我想使用库NReplayGain来计算 MP3 文件的重播,然后使用TagLibSharp库(带有非官方开源重播支持修改)将ID3v2重播标签写入文件。

好吧,这应该是使用 NReplayGain 库计算样本集重放增益的伪代码,正如他们的网站所示:https : //github.com/karamanolev/NReplayGain

Dim trackGain As New TrackGain(samplerate, samplesize)

For Each sampleSet As SampleSet In track
    trackGain.AnalyzeSamples(sampleSet.leftSamples, sampleSet.rightSamples)
Next

Dim gain As Double = trackGain.GetGain()
Dim peak As Double = trackGain.GetPeak()
Run Code Online (Sandbox Code Playgroud)

(...但如果我需要说实话,我不确切知道什么是 SampleSet(所有帧都加入了?))

试图计算sampleset的回放增益之前,我需要获得必要的数据,我需要传递给上面的代码,所以我需要得到的samplerateSampleSetleftSamplesrightSamples一个MP3文件。

我需要一个完整的代码示例,说明如何使用NAudiolib 或任何其他类型的 lib来检索这些数据。

我要求完整代码的原因是因为我知道我自己不能做到这一点,我在 NAudio 库之前接触了一些其他东西,对我来说非常困难,似乎libray 是专为音频大师程序员和音频大师编写的,没有任何简单的东西。

.net vb.net audio naudio cscore

0
推荐指数
1
解决办法
1995
查看次数