Tag: C#的

WebBrowser控件在一个新的线程

我有一个列表Uri的,我想要“点击”为了实现这个我试图创build一个新的Web浏览器控制每个Uri。我创build一个新的线程每Uri。我遇到的问题是线程结束之前的文档是完全加载的,所以我从来没有得到使用DocumentComplete事件。我该如何克服这一点? var item = new ParameterizedThreadStart(ClicIt.Click); var thread = new Thread(item) {Name = "ClickThread"}; thread.Start(uriItem); public static void Click(object o) { var url = ((UriItem)o); Console.WriteLine(@"Clicking: " + url.Link); var clicker = new WebBrowser { ScriptErrorsSuppressed = true }; clicker.DocumentCompleted += BrowseComplete; if (String.IsNullOrEmpty(url.Link)) return; if (url.Link.Equals("about:blank")) return; if (!url.Link.StartsWith("http://") && !url.Link.StartsWith("https://")) url.Link = "http://" […]

C中“static”是什么意思?

我已经看到了在C代码中用于不同地方的static词。 这就像在C#中的静态函数/类(其中的实现共享对象)?

何时使用-retainCount?

我想知道你到底在什么情况下使用了-retainCount ,最后是使用它的问题。 谢谢。

C#中的自然sorting顺序

任何人都有一个很好的资源,或提供一个在C#中的FileInfo数组自然顺序的样本? 我按照我的种类实现了IComparer接口。

从C#读取Excel文件

有没有一个免费或开放源代码库直接从C#程序读取Excel文件(.xls)? 它不需要太花哨,只需要select一个工作表并以stringforms读取数据。 到目前为止,我一直使用导出到Excel的Unicode文本函数,并parsing生成(制表符分隔)的文件,但我想消除手动步骤。

MVVM:教程从头到尾?

我是一名具有5年以上经验的C#/ Windows Forms程序员。 我一直在使用MVVM(Model-View-ViewModel)devise模式来研究WPF。 我已经在网上search教程。 我甚至观看了Jason Dolinger完美的video。 虽然我find了很多,我还没有find一个从头到尾的我。 我真正想要的是一个不承担任何以前的WPF知识的教程。 什么是你最喜欢的WPF-MVVM教程,帮助你学习?

我为什么不要#include <bits / stdc ++。h>?

我用我的代码发布了一个问题,只有#include指令如下: #include <bits/stdc++.h> 我的老师告诉我这样做,但在评论部分,我被告知我不应该这样做。 为什么?

处理NSDateFormatter语言环境“feechur”的最佳方法是什么?

看来, NSDateFormatter有一个“function”,意想不到的咬你:如果你做一个简单的“固定”格式的操作,如: NSDateFormatter* fmt = [[NSDateFormatter alloc] init]; [fmt setDateFormat:@"yyyyMMddHHmmss"]; NSString* dateStr = [fmt stringFromDate:someDate]; [fmt release]; 然后,它在美国和大多数地区正常工作,直到…一个人的手机设置为24小时的地区设置12/24小时开关设置为12。然后上面开始加上“AM”或“PM”上结果string的结尾。 (见,例如, NSDateFormatter,我做错了什么或这是一个错误? ) (请参阅https://developer.apple.com/library/content/qa/qa1480/_index.html ) 显然苹果已经宣布这是“坏” – 破碎devise,他们不会解决它。 规避显然是为特定地区(通常是美国)设置date格式化程序的语言环境,但是这有点麻烦: NSLocale *loc = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]; [df setLocale: loc]; [loc release]; 不是太糟糕了,但是我正在处理大约10个不同的应用程序,而我所看到的第一个应用程序有43个这种情况。 因此,对于macros/重写类/任何的任何聪明的想法,以尽量减less努力改变一切,而不使代码晦涩? (我的第一个直觉是用一个版本来覆盖NSDateFormatter,这个版本会在init方法中设置locale。需要改变两行 – alloc / init行和添加的导入。) 添加 这是我到目前为止 – 似乎在所有情况下工作: @implementation BNSDateFormatter -(id)init { static NSLocale* […]

在CLR中使用“as”关键字进行投射

当编程接口,我发现我正在做很多铸造或对象types转换。 这两种转换方法有区别吗? 如果是这样,是有成本差异,或者这如何影响我的程序? public interface IMyInterface { void AMethod(); } public class MyClass : IMyInterface { public void AMethod() { //Do work } // Other helper methods…. } public class Implementation { IMyInterface _MyObj; MyClass _myCls1; MyClass _myCls2; public Implementation() { _MyObj = new MyClass(); // What is the difference here: _myCls1 = (MyClass)_MyObj; _myCls2 […]

经常转换与static_cast vs. dynamic_cast

我已经写了C和C ++代码近二十年了,但是这些语言的一个方面我从来没有真正理解。 我显然使用了常规演员,即 MyClass *m = (MyClass *)ptr; 到处都是,但似乎还有两种types的演员,我不知道区别。 以下几行代码有什么区别? MyClass *m = (MyClass *)ptr; MyClass *m = static_cast<MyClass *>(ptr); MyClass *m = dynamic_cast<MyClass *>(ptr);