我想从我的表单(在C#中)写到excel电子表格,如果空白则删除某些行.
我可以完美地写一个speadsheet并保存它,但是让我们说用户将数据输入到行a1,a2,a3和a4中,我现在要删除a4和a29之间的所有行.
我所需要的只是找出如何删除一定范围的单元格.
谢谢
我正在使用NLog作为记录器。当我运行.exe,甚至通过Visual Studio进行调试时,登录时一切正常,NLog仍会写入该文件。
但是,如果我运行一个通过单元测试调用记录器的对象,则会创建该文件,但该文件为空。我是否需要添加到配置中以使NLog在单元测试下写入文件,需要额外的设置/规则?
我可以为此模拟NLog并且没有日志转储,但是我想看看是否可以在决定模拟NLog之前使其工作。即使这仅在单元测试中发生并且在其他情况下仍然有效,这还是我的配置和日志记录代码。我忽略了文件名。
public static void Info(string app, string m) => EngineLogger.Logger.Info($"{app} : {m}");
<targets>
<target name="infoFile"
xsi:type="File"
layout="${date:format=yyyy-MM-dd HH\:mm\:ss} ${pad:padding=5:inner=${level:uppercase=true}} ${logger} ${message}"
fileName="leftoutForQuestion"
keepFileOpen="false"
encoding="iso-8859-2" />
<target name="errorFile"
xsi:type="File"
layout="${date:format=yyyy-MM-dd HH\:mm\:ss} ${pad:padding=5:inner=${level:uppercase=true}} ${logger} ${message}"
fileName="leftOutForQuestion"
keepFileOpen="false"
encoding="iso-8859-2" />
</targets>
<rules>
<logger name="*" minlevel="Debug" maxlevel="Info" writeTo="infoFile" />
<logger name="*" minlevel="Warn" maxlevel="Fatal" writeTo="errorFile" />
</rules>
Run Code Online (Sandbox Code Playgroud)
这是内部日志中的错误:
Error Error has been raised. Exception: System.Runtime.InteropServices.COMException (0x800700A1): The specified path is invalid. (Exception from HRESULT: 0x800700A1)
at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
at NLog.Internal.FileAppenders.BaseFileAppender.WindowsCreateFile(String …Run Code Online (Sandbox Code Playgroud) 所以我找不到任何有效的东西......
但是我想要一个不允许用户做任何事情的消息框,直到他或她点击了确定.
所以,如果他们要说...点击消息框外面.它会发出哔哔声并向它们眨眼,直到点击为止.
这是通过主要父表单左侧的属性完成的吗?或者这一切都是通过编程完成的吗?
感谢大家.
我有使用C#的VS 2015社区.我创建了一个WPF应用程序.
当我按F5或播放Visual Studio开始正常调试应用程序.我甚至看到诊断显示内存使用情况和CPU(但它锁定,例如在20毫秒并保持在那里).问题是,有时应用程序将在调试时打开并运行,大多数情况下它不会.重要的是要注意,visual studio本身并没有锁定,只是诊断工具窗口.
如果我在没有调试的情况下运行,应用程序正常打开并且没有问题,但如果我想调试,应用程序甚至不会打开.
对不起,我没有错误显示,因为我没有错误或警告.它只是在调试期间不会打开.
是否有我错过的补丁/更新或之前有任何人遇到此问题?