小编Gol*_*cks的帖子

ScrollViewer的预留空间

我有一个ScrollViewer圆形控件和

<ScrollViewer VerticalScrollBarVisibility="Auto">
   ...some controls here...
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud)

默认情况下,它不会保留显示滚动条所需的空间.这意味着当它显示/隐藏时,我的控件会被挤压并再次展开.

如何为滚动条保留空间?是否有某种属性或风格我可以设置,这意味着当它不需要它被设置为隐藏而不是崩溃?或者我的孩子控制器需要在右手边有"填充物"或其他东西来留下空间吗?我应该将控件放在网格中,并使滚动条的滚动条显示在(以某种方式)?

我希望它在不需要时仍然是隐形的我只是想让它保留空间的最佳方式.

谢谢大家.

c# wpf wpf-controls

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

本地化WPF应用程序不起作用?

我一定在这里想念什么。

我在VS2015中创建了一个全新的WPF应用程序。我创建一个资源“ String1”,并将其值设置为“ fksdlfdskfs”。

我更新了默认的MainWindow.xaml.cs,以便构造函数具有:

    public MainWindow()
    {
        InitializeComponent();
        this.Title = Properties.Resources.String1;
    }
Run Code Online (Sandbox Code Playgroud)

并运行该应用程序,它运行正常,我的窗口标题是fksdlfdskfs。

在AssemblyInfo.cs文件中,我看到以下注释:

//In order to begin building localizable applications, set 
//<UICulture>CultureYouAreCodingWith</UICulture> in your .csproj file
//inside a <PropertyGroup>.  For example, if you are using US english
//in your source files, set the <UICulture> to en-US.  Then uncomment
//the NeutralResourceLanguage attribute below.  Update the "en-US" in
//the line below to match the UICulture setting in the project file.

//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
Run Code Online (Sandbox Code Playgroud)

所以我将以下内容添加到我的WpfApplication5.csproj文件中,并在VS中重新加载该项目:

<UICulture>en-US</UICulture>

然后在AssemblyInfo.cs中取消注释以下行:

[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
Run Code Online (Sandbox Code Playgroud)

如果现在去运行该应用程序,该应用程序将不再运行,并且在读取资源的那一行上会出现以下异常: …

.net c# globalization wpf xaml

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

AWS Fargate“CannotPullContainerError 无法提取层”

我尝试使用 ECR 中的图像启动 ECS 任务,但它没有启动,出现以下错误:

CannotPullContainerError:containerd:拉取命令失败:time =“2021-08-10T13:12:24Z”level = info msg =“应用失败,尝试清理”error =“无法提取层sha256:e5b96 [snip] 8caa:链接/变量/...

此错误的所有其他在线示例似乎都有“未找到”元素。我的没有,我有点迷失了它为什么不起作用。

有任何想法吗?

amazon-web-services amazon-ecs amazon-ecr aws-fargate

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

为什么 Path.Combine 会有这样的行为?

我们遇到了这篇文章所展示的同样的行为:

为什么 Path.Combine 会产生相对路径的结果?

在哪里:

var basePath = @"\\server\BaseFolder";
var relativePath = @"\My\Relative\Folder";

var combinedPath = Path.Combine(basePath, relativePath);
Run Code Online (Sandbox Code Playgroud)

产生输出 , \My\Relative\Folder而不是预期的\\server\BaseFolder\My\Relative\Folder

阅读本文和其他帖子以及 MSDN文档后:

如果后续路径之一是绝对路径,则组合操作将从该绝对路径开始重置,并丢弃所有先前的组合路径。

我完全理解这种行为,以及它在做什么以及如何解决它。

我不明白的是为什么

在什么情况下这是必需的行为?为什么您想要在这里传递一组参数,并让它完全忽略您传入的前几个参数,而只采用最后几个参数?

当然,微软最好将其视为例外,而不是仅仅忽略参数 - 如果尝试将绝对路径与已经绝对肯定是无效参数的路径合并......

可能会写我自己的方法来做我想做的事,只是想得到每个人的意见,为什么它可以故意这样设计。

c#

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