【c# – Windows窗体ListView控件中的可扩展组】教程文章相关的互联网学习教程文章

c# – TcpListener:检测客户端断开连接,而不是客户端暂时不发送任何数据【代码】

我正在寻找在使用TcpListener时如何检测“客户端断开连接”. 所有答案似乎都与此类似:TcpListener: How can I detect a client disconnect? 基本上,从流中读取,如果Read()返回0,则客户端已断开连接. 但这是假设客户端在发送的每一个数据流之后断开连接.我们在TCP连接/断开开销既缓慢又昂贵的环境中运行. 我们建立连接,然后发送一些请求. 伪代码:client.Connect(); client.GetStatus(); client.DoSomething(); client.DoSomething...

c# – Nancyfx自托管无法阻止HttpListener【代码】

我有一个应用程序,它具有基于NancyFx的休息服务,我发现它非常酷的框架.但是我有一个很大的问题就是阻止它.我的主机类看起来像这样:public class RestHost : IStartStopAble {private readonly string _uri;private readonly IWindsorContainer _container;private NancyHost _host;private Thread _wsThread;private WindsorBootstrapper _windsorBootstrapper;public RestHost(string uri, IWindsorContainer container){_uri = ...

c# – 测量速度时List.Contains和List.IndexOf的行为不一致【代码】

我需要使用C#快速处理大量字符串.为了找到最快的方法,我一直在使用以下基准测试功能:delegate void Test(); static void time(Test test, int iter, string label){Stopwatch timer = new Stopwatch();timer.Reset();timer.Start();int i = 0;while (i < iter){test();i++;}Console.WriteLine(label + ": " + timer.ElapsedMilliseconds.ToString());timer.Reset();}当我运行此代码时:int iter = 10000000; string[] array = new...

c# – 如何在另一个列表中的两个属性上创建List basead?【代码】

问题 我需要创建一个List< int>从另一个列表中选择两个属性. 例 我有一个课程,有两个我需要的字段.public class MyClass {//Other fieldsint? ValueIdint? ValueTwoId }上面的代码是一个例子,所以不要专注于那里. 我想要检索这些属性,如:myClassList.ElementAt(0).ValueId = 1; myClassList.ElementAt(0).ValueTwoId = 2; myClassList.ElementAt(1).ValueId = 3; myClassList.ElementAt(1).ValueTwoId = 4;List<int> resultList =...

c# – 为什么检查List.Count <= 0?【代码】

我在许多代码片段中看到,以下条件用于检查列表是否为空:List<string> someList = someFunctionThatPopulatesAList(); if (someList == null || someList.Count <= 0)return;我想知道 – 为什么不使用以下条件:if (someList == null || someList.Count == 0)return;是否有任何List< T> .Count为负数的情况?解决方法:你可以简单地尝试使用Any()之类的if ((someList!= null) && (!someList.Any())) {}请注意,如果列表使用IEnumerab...

c# – List.Except(List)未按预期工作【代码】

我有两个相同类型的列表. 一个列表是从文件加载并转换为正确类型的反序列化json对象. 另一个是由相同类型的对象创建的列表. 当我做List2.Except(List1)时,我希望看到List2中的所有内容都不在List1中 在这种情况下,List2将具有List1具有的所有内容,仅此而已,因此我希望看到生成的Enumerable< T>大小为0,但我只是看到List2的整体,好像比较从未发生过.IEnumerable<Review> newReviews = reviews.Except(savedRvReviews, new ReviewCom...

c# – 如何使用AutoFixture创建SortedList【代码】

我尝试创建一个SortedList<,>使用AutoFixture,但它会创建一个空列表:var list = fixture.Create<SortedList<int, string>>();我想出了以下产生物品,但有点笨重:fixture.Register<SortedList<int, string>>(() => new SortedList<int, string>(fixture.CreateMany<KeyValuePair<int,string>>().ToDictionary(x => x.Key, x => x.Value)));它不是通用的(强类型为int和string).我有两个不同的TValue SortedLists来创建. 有更好的建议...

c# – 如果你知道类型,为什么要使用“List where T:SomeType”【代码】

我试图理解通用约束.可悲的是,我现在没有理由使用它们,但我会尽力提出情况,以便我可以玩它,并了解它们将如何/何时提供帮助. 我遇到了一个问题.对我来说,这两个是相同的public List<T> Get<T>() where T : DemoClassTwo public List<DemoClassTwo> Get()两者都将返回一个List,并且必须是DemoClassTwo类型,因此我不明白为什么我会使用该约束的方法. 一些实际的代码来证明这一点static void Main(string[] args) {var dco = new DemoC...

使用C#在WinForm中托管的ListBox中添加和删除文本【代码】

我正在开发一个简单的应用程序,用于将String / s添加/删除到数组中并在ListBox中显示. 我的代码只显示了在textBox中输入的最新值private void Add_Click(object sender, EventArgs e) {string add = textBox1.Text;List<string> ls = new List<string>();ls.Add(add);String[] terms = ls.ToArray();List.Items.Clear();foreach (var item in terms){List.Items.Add(item);} }private void Delete_Click(object sender, EventArgs ...

c# – 为什么List,Dictionary和其他集合包含一个名为“version”的字段?【代码】

我正在查看C#的源代码参考,在一些集合中我发现:int _version = 0;每次收集更改时,版本都会增加. 这个领域的重点是什么? Dictionary List Stack解决方法:查看源here,它似乎用于检查状态是否已更改并导致内部枚举器在枚举时抛出InvalidOperationException.这也适用于List< T> .ForEach(..)方法. 这是有道理的,因为在枚举时修改集合是不合法的.更准确地说,一旦修改后继续迭代一个集合是不合法的,但我发现前一个规则使我无法进入后者...

c# – WPF ListView标题【代码】

我想知道,大多数wpf列表视图标题/列是可移动的.是否有可能使它们不可拖动或可移动?有没有人知道这个属性有什么机会? 提前致谢!解决方法:MSDN是你的朋友;) 在MSDN上> ListView> MSDN上的GridView> MSD上的GridView.AllowsColumnReorder 具体来说,您要寻找的房产是GridView.AllowsColumnReorder<ListView><ListView.View><GridView AllowsColumnReorder="true"><!-- content --></GridView></ListView.View> </ListView>

c# – Winforms – 如何在ListView控件中交替行的颜色?【代码】

使用C#Winforms(3.5). 是否可以将行颜色设置为在列表视图中自动交替? 或者每次将新行添加到列表视图时是否需要手动设置行颜色? 基于MSDN文章,手动方法如下所示://alternate row color if (i % 2 == 0) {lvi.BackColor = Color.LightBlue; } else {lvi.BackColor = Color.Beige; }解决方法:我担心这是Winforms的唯一方法. XAML允许通过使用样式.

c# – 向Listview添加大量项目【代码】

我有一个listview,它被用作简单搜索应用程序的索引.索引的每个项目都是一个单词,单击该项目会将该项目添加到搜索文本框中.用户可以首先点击她/他喜欢的任何单词,然后点击搜索文本框,然后单击搜索,搜索文档.问题是向ListView添加超过1000个项目需要大量的运行时间!我设计了一个进度条并添加了一个计时器,一旦表单加载,它就会开始向列表视图添加项目.这给应用程序提供了响应,但效率仍然很低.我怀疑当文档库增长足够时,索引中可能有大...

c# – ListBox SelectedValueChanged / SelectedIndexChanged在数据源更改时不触发【代码】

我需要跟踪ListBox上的所选项目,以根据当前选择的值更新/禁用其他控件. 这是重现问题的代码:public partial class Form1 : Form {private readonly BindingList<string> List = new BindingList<string>();public Form1(){InitializeComponent();listBox1.DataSource = List;listBox1.SelectedValueChanged += (s, e) => System.Diagnostics.Debug.WriteLine("VALUE");listBox1.SelectedIndexChanged += (s, e) => System.Diagnos...

c# – ToList()的效率[复制]【代码】

参见英文答案 > Is there a performance impact when calling ToList()? 8个与我合作的很多开发人员使用List而不是IEnumerable(例如)感觉更舒服.我想知道是否对ToList()过度使用有任何性能影响.例如,或者,在订购后将使用ToList()再次获取列表,即private void ListThinger(List<T> input) {input = input.OrderBy(s => s.Thing).ToList();foreach(var thing in input){// do things} }我的问题是...

LISTVIEW - 相关标签