小编Asa*_*Ali的帖子

你如何捕获迭代变量?

捕获for循环的迭代变量时,C#将该变量视为在循环外声明.这意味着在每次迭代中捕获相同的变量.以下程序写入333而不是写入012:

Action[] actions = new Action[3];
for (int i = 0; i < 3; i++)
    actions [i] = () => Console.Write (i);

foreach (Action a in actions) a(); // 333
Run Code Online (Sandbox Code Playgroud)

我在Nutshell(第5版)中阅读C#,今天我遇到了这个,但我无法理解它,我不知道输出是什么333而不是012.是因为i打印的值是循环的值吗?怎么可能?i应该在循环后处理,不是吗?

.net c# lambda for-loop

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

根据BackColor反转文本颜色

我有一个ProgressBar像以下两个控件:

在此输入图像描述

第一个画得很好.正如你所看到的,第二个只有一个0,它应该有两个,但另一个不能看到因为ProgressBar ForeColor与它相同TextColor.当ProgressBar下面用Lime绘制时,我可以用黑色绘制文本,并在背景为黑色时在Lime中绘制文本吗?

.net c# gdi+ gdi winforms

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

将一个 WinForm 停靠在另一个 WinForm 中

我遇到了一个问题,并且关于同一问题的旧答案不够新,所以我认为可以再次询问。我的问题是:如何将一个表单停靠在另一个表单中?使用Panel 和Form 会更合适吗?第一种选择可能吗?提前致谢。

.net c# winforms

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

标签 统计

.net ×3

c# ×3

winforms ×2

for-loop ×1

gdi ×1

gdi+ ×1

lambda ×1