我需要创建一个Set初始值.
Set<String> h = new HashSet<String>();
h.add("a");
h.add("b");
Run Code Online (Sandbox Code Playgroud)
有没有办法在一行代码中执行此操作?例如,它对最终的静态字段很有用.
在我正在开发的应用程序中,我正在使用datagridview来显示数据.为了填充它,我要按一个按钮,后台工作人员将开始运行,它将填充一个数据表,当它完成运行时,它将使用数据表作为数据网格的数据源.这很好用,用户界面保持响应等等.但是现在我已经对行进行了着色,这取决于它们的值(我还在玩它,所以欢迎任何建议):
private void ApplyColoring()
{
if (dataGridView1.DataSource != null)
{
foreach (DataGridViewRow dataGridRow in dataGridView1.Rows)
{
// hardmap a color to a column
IDictionary<Int32, Color> colorDictionary = new Dictionary<Int32, Color>();
colorDictionary.Add( 7, Color.FromArgb(194, 235, 211));
colorDictionary.Add( 8, Color.Salmon);
colorDictionary.Add( 9, Color.LightBlue);
colorDictionary.Add(10, Color.LightYellow);
colorDictionary.Add(11, Color.LightGreen);
colorDictionary.Add(12, Color.LightCoral);
colorDictionary.Add(13, Color.Blue);
colorDictionary.Add(14, Color.Yellow);
colorDictionary.Add(15, Color.Green);
colorDictionary.Add(16, Color.White);
foreach (DataGridViewRow gridRow in dataGridView1.Rows)
{
foreach (DataGridViewCell cell in gridRow.Cells)
{
if (colorDictionary.Keys.Contains(cell.ColumnIndex))
{
// standard background
cell.Style.BackColor = Color.FromArgb(194, 235, 211);
}
} …Run Code Online (Sandbox Code Playgroud) 我想使用LibTiff来访问非常大的TIFF文件.我需要多个页面和磁贴等功能,所以LibTiff似乎是正确的方法.任何人都可以帮助我如何使用C#中的LibTiff?我找到了一些链接(比如blog.bee-ee,其中包含部分代码.但我不能超越一个版本.我看过FreeImage但发现它不合适(图片大约800 MPixel 8或16)位灰度 - > 800-1600 MByte)大小,我无法在32位环境中将其加载到内存中)
我在C/C++方面非常有经验,但还没有在C#中.任何人都可以帮我一个包装或一些提示吗?
注意:我需要页面访问tiff中的金字塔平面(多分辨率),256x256的图块可以快速访问图像的不同部分而无需立即加载.
[编辑] LibTIFF.NET解决方案对我来说似乎最实用.我现在正在将它集成到产品开发中,它可以让我从进出管理内存中省去很多麻烦.我还没有尝试过'回调'功能,这似乎可以通过.net方式很好地解决.感谢stackoverflow的帮助[/编辑]
我写了一个这样的脚本:
NS.load = function(src) {
var script = document.createElement("script").setAttribute("src", src);
document.getElementsByTagName("head")[0].appendChild(script);
}
Run Code Online (Sandbox Code Playgroud)
它加载文件,但我无法到达其他文件中的功能和变量.
//js/main.js
var qux = {name: "name"};
NS.load("js/foo.js");
//js/foo.js
alert(qux.name); //undefined variable
Run Code Online (Sandbox Code Playgroud)
但如果我像这样定义qux:
window.qux = {name: "name"};
Run Code Online (Sandbox Code Playgroud)
我可以在其他模块中访问qux变量.据我所知,所有全局变量都已经是window对象的成员.那么为什么我必须定义这样的变量.你能提供另一种方法吗?
谢谢.
我有一个连接到网站的PowerShell脚本,并解析其返回的数据(它是关于将以前上传的SQL文件导入到网站的数据库中).PowerShell脚本使用wget,稍后我可以用本机函数替换它.
导入过程嵌入在由称为scriptFTP的第三方程序执行的脚本中.
当我从一个.bat文件中调用它时,脚本运行正常:
powershell "& "C:\data\etc\run_import_script.ps1"
exit %ERRORLEVEL%
Run Code Online (Sandbox Code Playgroud)
但是,当我从更大的ScriptFTP上下文中调用此.bat文件时,会发生以下情况:
当我将批处理文件更改为以下内容时:
start powershell "& "C:\data\etc\run_import_script.ps1"
exit %ERRORLEVEL%
Run Code Online (Sandbox Code Playgroud)
它工作,在新的控制台中运行PowerShell脚本,但我无法获取PowerShell返回的错误级别.
我试图直接从ScriptFTP调用PowerShell,绕过批处理文件,但结果相同:它只是卡住了.
我有PowerShell脚本的任何输出都使用Write-Output或Write-Host不显示.
所有程序都在同一个用户下运行,我.
有人有什么想法怎么办?
为了测试某些东西抛出,例如ArgumentException我可以这样做:
Assert.Throws<ArgumentException>(() => dog.BarkAt(deafDog));
Run Code Online (Sandbox Code Playgroud)
如何ParamName以清晰的方式检查是否正确?还有奖金问题:或许您可能会建议不要对此进行测试?
我刚刚开始使用Git(以前的Subversion).我遇到了真正的问题让我无法看到原始存储库中的推送或拉动更改.我的'架构'是这样的:
MAIN CODEBASE
-->Development repository 1
-->Development repository 2
Run Code Online (Sandbox Code Playgroud)
当我将更改从其中一个dev repos推回到时MAIN CODEBASE,我看不到那里的变化.
当我随后退出时MAIN CODEBASE,该dev repo中的所有先前更改都将被覆盖.
我在这里显然缺少一个或多个点,而且我对文档似乎认为我知道'显而易见'非常困惑.就目前而言,Git对我来说似乎毫无用处,我想知道是否要回到Subversion--它当然更容易学习和理解.
我的CakePHP应用程序中有一个简单的Category模型.我想添加子类别,只需添加parent_id列即可.
parent_id是belongsTo关系,它引用相同的Category模型.
当我生成我的管理脚手架时,下拉列表会出现(正确!),但我想在此下拉列表中包含一个NULL选项(对于顶级类别).
这可能吗?如果是这样,怎么样..
(注意:现在对树行为不感兴趣)
我在C#中找到了一些开源的R-Tree实现,但没有一个带有文档,也没有被开发者以外的其他人使用的迹象.
当用户使用右上角X或Alt + F4关闭它时,System.Windows.Forms.Form会自动释放吗?表单显示为form.Show(this),而不是form.ShowDialog(...);
c# ×4
.net ×3
winforms ×2
belongs-to ×1
cakephp ×1
collections ×1
constructor ×1
datagrid ×1
exception ×1
flicker ×1
git ×1
hashset ×1
java ×1
javascript ×1
libtiff ×1
libtiff.net ×1
nunit ×1
php ×1
powershell ×1
properties ×1
r-tree ×1
spatial ×1
tree ×1
windows ×1