小编the*_*nut的帖子

为什么编译错误"使用未分配的局部变量"?

我的代码如下

int tmpCnt;  
if (name == "Dude")  
   tmpCnt++;  
Run Code Online (Sandbox Code Playgroud)

为什么会出错Use of unassigned local variable tmpCnt?我知道我没有明确初始化它,但由于默认值表,0无论如何都会初始化值类型.该参考文献也提醒我:

请记住,不允许在C#中使用未初始化的变量.

但是,如果它已经默认完成,为什么我必须明确地这样做?如果我不必这样做,它会不会获得性能?就是想...

.net c#

62
推荐指数
3
解决办法
21万
查看次数

无法将int强制转换为bool

我面临的问题是,在我的情况下,C#无法将数字1强制转换为bool.在我的情况下(bool)intValue不起作用.我得到了InvalidCastException.我知道我可以使用,Convert.ToBoolean(...)但我只是想知道它不起作用.对此有何解释?

我的代码是

if (actualValueType.Name == "Boolean" || setValueType.Name == "Boolean")
{
   if ((bool)actualValue != (bool)setValue)
   ...
}
Run Code Online (Sandbox Code Playgroud)

c# int casting boolean

48
推荐指数
3
解决办法
8万
查看次数

仅在wpf上显示X和最小化按钮

我不希望用户调整窗口大小,所以我做了ResizeMode="NoResize".但是最小化按钮也会消失,只有X按钮可见.有没有办法保持最小化按钮?

.net c# wpf button minimize

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

区分大小写的Directory.Exists/File.Exists

有没有办法让案件敏感Directory.Exists/ File.Exists从那以后

Directory.Exists(folderPath)
Run Code Online (Sandbox Code Playgroud)

Directory.Exists(folderPath.ToLower())
Run Code Online (Sandbox Code Playgroud)

都回归true

大多数时候它并不重要但我使用的宏如果路径与100%的情况不匹配似乎不起作用.

c# directory file case-sensitive file-exists

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

带有wait参数的Get-Content不会在Powershell中更新

我正在尝试使用Get-Content $path -waitWindows Powershell V3.0 监视文件.有时当我在Powershell中执行此命令行时,它将按预期运行.但有时它只会执行(或至少看起来像),get-content但没有-wait参数.即使文件得到更新,它也不会在Powershell中显示.如果我取消该命令并重新运行它将显示更新的文件内容.

我需要做什么?

编辑:似乎在一段时间后更新块.但这不是真正的实时.

powershell

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

创建自己的SwitchCompat首选项

由于appcompat v7缺失了SwitchCompatPreference,似乎有必要自己创建它.

怎么能实现这一目标?我google了一下,找到了一个教程DialogPreference.我试图采用它,SwitchCompatPreference但在我的xml布局中,它总是说在偏好xml中不允许这个类.

我需要做什么?

android android-appcompat preference switchcompat

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

程序运行时,在创建文件后锁定目录

在目录中创建文件后,只要我创建文件的程序正在运行,目录就会被锁定.有没有办法释放锁?我需要稍后重命名该行目录,我总是得到IOException一句"访问路径"......"拒绝".

Directory.CreateDirectory(dstPath);
File.Copy(srcPath + "\\File1.txt", dstPath + "\\File1.txt"); // no lock yet
File.Create(dstPath + "\\" + "File2.txt"); // causes lock
Run Code Online (Sandbox Code Playgroud)

c# directory locked-files

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

FindFirstFileEx 不区分大小写

由于我正在使用一个宏,如果给定路径的大小写与驱动器上的本地路径不相等,我首先需要验证该路径是否存在大小写。不幸的是(就我而言)Directory.Exists()不区分大小写。

所以我尝试了FindFirstFileExdwAdditionalAttributesset1代表FIND_FIRST_EX_CASE_SENSITIVE。然而,它似乎对我不起作用。我的本地路径是C:\Dir1\Dir2\Dir3. 我比较的路径是C:\dir1\Dir2\Dir3. 不幸的是,我总是得到Dir3结果。如果案例不匹配,我会期望一个空的结果。

我的错是什么?

string dir = @"C:\Dir1\Dir2\Dir3" + '\0';
int FIND_FIRST_EX_CASE_SENSITIVE = 1;
WIN32_FIND_DATA fi;

IntPtr h = FindFirstFileEx( dir,
                            FINDEX_INFO_LEVELS.FindExInfoStandard,
                            out fi,
                            FINDEX_SEARCH_OPS.FindExSearchNameMatch,
                            IntPtr.Zero,
                            FIND_FIRST_EX_CASE_SENSITIVE);
Run Code Online (Sandbox Code Playgroud)

c# case-sensitive case-insensitive

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

如何反序列化 Nullable<bool>?

我正在尝试Nullable<bool>从我的 XML 文件中反序列化 a 。我的期望是在我的 XMLElement 中找不到的 XMLAttribute 是null,如果找到,它将是truefalse。序列化也一样。如果它不为空,我的变量将被写入。

无论如何,每次我试图反序列化我的 XML 时,InvalidOperationException都会被抛出。

我的班级看起来像这样

[XMLArray("Users")]
public class User
{
    [XMLAttribute("copy")]
    public bool? copy;
}
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

c# xml nullable xml-deserialization

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

如何获取操作的默认应用程序

如何确定哪个应用程序是特定操作的默认应用程序?例如我想知道哪个应用程序用于拨打电话或接收短信。有什么方法可以以编程方式找出哪个应用程序设置为默认应用程序?

android

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