草庐IT

时有发生

全部标签

c# - 每当 C# 中的 WindowState 发生变化时,我如何触发某些东西?

所以我想立即触发一个函数,因为这部分程序依赖于速度,当我的主窗体中的窗口状态发生变化时。我需要它是这样的:privatevoidgoButton_Click(objectsender,EventArgse){//Code}我检查了表单的事件选项卡,没有WindowStateChanged等。我该怎么做?表单的大小会调整很多,因此无法检查何时更改大小。 最佳答案 Resize事件(或SizeChanged)将在WindowState更改时触发。附带说明一下,WPF确实包含一个StateChanged直接为此事件。

c# - 为什么要调用 Dispose()?不会发生内存泄漏?

编辑:我的问题没有得到我正在寻找的主要答案。我不清楚。我真的很想知道两件事:不能调用Dispose()会导致内存泄漏吗?如果您有一个大型程序并且从不对任何IDisposable对象调用Dispose(),那么最糟糕的事情是什么?我的印象是,如果未对IDisposable对象调用Dispose(),可能会发生内存泄漏。根据关于此thread的讨论,我的看法是不正确的;如果未调用Dispose(),则不会发生内存泄漏。那为什么还要调用Dispose()呢?是否只是立即释放资源,而不是稍后释放资源?如果您有一个大型程序并且从不对任何IDisposable对象调用Dispose(),那么最糟糕

c# - 托管代码中是否可能发生内存泄漏? (特别是 C# 3.0)

例如,如果我有一个分层数据结构:classNode{publicListchildren;}它被填充到许多层次,然后在其中一个parent去:myNode.children.Clear();这将清除所有对直系子代的引用——但是那些直系子代引用的所有孙代、曾孙代等又如何呢?C#是否足够聪明,知道它们不再需要并且将被垃圾收集?我读过使用WPF数据绑定(bind)而不实现接口(interface)INotifyChanged会导致内存泄漏:http://blogs.msdn.com/b/micmcd/archive/2008/03/07/avoiding-a-wpf-memory-leak-

c# - EF Core 的 HasColumnName 发生了什么变化?

所以我试图将一个内部属性映射到我的数据库,并根据这个articleonline这就是你应该做的。我发现的其他资源也告诉我做同样的事情。无论出于何种原因,该方法不存在,我也无法在网上找到他们重命名的内容,或者他们是否只是删除了该方法。这是我的代码:publicclassCriteria:DbEntity{internalstring_Condition{get;set;}[NotMapped]publicConditionCondition{get{returnstring.IsNullOrEmpty(_Condition)?null:JsonConvert.DeserializeObj

c# - 编译服务此请求所需的资源期间发生错误

这是什么意思?ServerErrorin'/'Application.CompilationErrorDescription:Anerroroccurredduringthecompilationofaresourcerequiredtoservicethisrequest.Pleasereviewthefollowingspecificerrordetailsandmodifyyoursourcecodeappropriately.CompilerErrorMessage:Thecompilerfailedwitherrorcode-1073741502.ShowDetailedCo

c# - 有关结构实现接口(interface)时发生的情况的详细信息

我最近遇到了这个Stackoverflow问题:Whentousestruct?在里面,它有一个答案,说的有点深奥:Inaddition,realizethatwhenastructimplementsaninterface-asEnumeratordoes-andiscasttothatimplementedtype,thestructbecomesareferencetypeandismovedtotheheap.InternaltotheDictionaryclass,Enumeratorisstillavaluetype.However,assoonasamethodcalls

c# - 当数据库中的数据发生更改时,LINQ to SQL 不会更新

我遇到这个问题,在数据库上更新字段(比如表MyTable中的Field3)后,MyTable.Field3(在C#中)仍然返回旧值。我怀疑有一些缓存......?我如何强制它:从数据库读取值?或者更新MyTable类中的值?或者有什么我想念的吗?我是LINQ新手提前谢谢你。 最佳答案 DataContext.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues,entity);如果您想刷新整个实体集,最简单的方法可能是只创建一个新的DataContext并重新查询所有

c# - Array 中会发生装箱和拆箱吗?

我是编程新手,根据MSDN,Boxingistheprocessofconvertingavaluetypetothetypeobjectortoanyinterfacetypeimplementedbythisvaluetype.WhentheCLRboxesavaluetype,itwrapsthevalueinsideaSystem.Objectandstoresitonthemanagedheap.Unboxingextractsthevaluetypefromtheobject.Boxingisimplicit;unboxingisexplicit.我知道我们可以在数组列表中

c# - 如果第 2 代已满,垃圾收集期间会发生什么?

我正在重读CLRviaC#现在有一些关于.NET中的垃圾收集的问题。在书中,第0代被填满后,垃圾收集开始并将所有未完成的对象引用移动到第1代。当第1代被填满时也会发生同样的情况。但是当第二代被填满时会发生什么?没有其他世代可以移动引用。Generation2的大小是否由CLR扩展? 最佳答案 是的,如果可以的话,它会扩大第2代的规模。如果没有更多可用空间,您将收到OutOfMemoryException。 关于c#-如果第2代已满,垃圾收集期间会发生什么?,我们在StackOverflo

c# - 如果 yield return 从未发生,是否返回 null?

该方法通过yieldreturn语句返回IEnumerable。如果yield语句从未发生(它在条件逻辑中),该方法会返回null,还是会返回一个计数为0的Enumerable? 最佳答案 一个有效的IEnumerable,当您遍历它时不产生任何值。试想一下:您可以将IEnumerable生成器存储在一个变量中-代码本身只会在您实际遍历结果时执行。如果您有null,您如何执行代码?或者您如何知道该函数在不运行的情况下不会产生任何结果。 关于c#-如果yieldreturn从未发生,是否返