c system.collectionss.generic.list(Of T)的类型实参太少

VB.NET 泛函数 system.collections.generic.list(of textbox) 的使用问题!_百度知道
VB.NET 泛函数 system.collections.generic.list(of textbox) 的使用问题!
ByVal k As Integer)
Dim cc As String()
Dim i As Integer
For i = 0 To k
cc(i) = list(i),Public Function GetTextboxFromFrm(ByVal frm As Control.HasChildren Then
listTB.Controls
Debug? Private Sub Gettext(ByVal list As List(Of TextBox),并将其放在一个数组中~感谢。或者可以告诉我在VB!请高手帮帮忙, k))
Return listTB
End Function请问如何将listTB中元素的text属性赋值给一个数组呢; & TypeName(obj))
If TypeOf obj Is TextBox Then
listTB; &quot.Name & &quot.NET中怎么获取一个窗口上所有文本框的text属性, ByVal k As Integer) As List(Of TextBox)
Dim obj As Control
Dim listTB As New List(Of TextBox)
For Each obj In frm?为什么下面的方法不行.WriteLine(obj,会出现“未将对象引用设置到对象的实例”的错误.Text
End Sub运行Gettext函数时有函数如下.AddRange(GetTextboxFromFrm(obj,感激不尽.Add(obj)
提问者采纳
LINQ返回类型是IEnumerable(OF T),所以后面会出NullReferenceElist&quot,可以通过list。定义数组要这么定义Dim cc(k) As String还有你为什么要用参数k呢;)
Dim k As Integer = list,不过很多时候其实用不着转化成数组.Text).Count来获得列表中元素的数量:Dim ts = (From c In list Select c。
Private Function GetText(list As List(Of TextBox)) As String()
If list Is Nothing Then Throw New ArgumentNullException(&quot.ToArray或者LINQ.Text).Count - 1
Dim cc(k) As String
For i As Integer = 0 To k
cc(i) = list(i)。它们都有ToArray()方法来转化为数组.Text
End Function还有一些其他方法,比如用convertAll Dim Texts = list,它的值为Nothing.ToArrayConvertAll返回类型就是List(Of T)Dim cc As String(),这样只是定义了一个数组类型的变量.ConvertAll(Function(txt) txt
提问者评价
非常感谢!问题已经解决!我是VB.NET的初学者,有很多地方不懂,不知道您有没有什么书可以推荐?
其他类似问题
为您推荐:
其他1条回答
问教授吧~亲
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁List 泛型类 (System.Collections.Generic)
List 泛型类
List 泛型类
.NET Framework 2.0
注意:此类在 .NET Framework 2.0 版中是新增的。
表示可通过索引访问的对象的强类型列表。提供用于对列表进行搜索、排序和操作的方法。
命名空间:System.Collections.Generic程序集:mscorlib(在 mscorlib.dll 中)
[SerializableAttribute]
public class List&T& : IList&T&, ICollection&T&,
IEnumerable&T&, IList, ICollection, IEnumerable
J# 支持使用泛型类型和方法,但不支持进行新的声明。
JScript 支持泛型类型和方法。
T 列表中元素的类型。
类的泛型等效类。该类使用大小可按需动态增加的数组实现
泛型接口。
List 类既使用相等比较器又使用排序比较器。
诸如 、、 和
这样的方法对列表元素使用相等比较器。类型 T 的默认相等比较器按如下方式确定。如果类型 T 实现
泛型接口,则相等比较器为该接口的
方法;否则,默认相等比较器为 。
这样的方法对列表元素使用排序比较器。类型 T 的默认比较器按如下方式确定。如果类型 T 实现
泛型接口,则默认比较器为该接口的
方法;否则,如果类型 T 实现非泛型
接口,则默认比较器为该接口的
方法。如果类型 T 没有实现其中任一个接口,则不存在默认比较器,并且必须显式提供比较器或比较委托。
List 不保证是排序的。在执行要求 List 已排序的操作(例如 BinarySearch)之前,您必须对 List 进行排序。 可使用一个整数索引访问此集合中的元素。此集合中的索引从零开始。
List 接受 空引用(在 Visual Basic 中为 Nothing) 作为引用类型的有效值并且允许有重复的元素。
在决定使用 List 还是使用 ArrayList 类(两者具有类似的功能)时,记住 List 类在大多数情况下执行得更好并且是类型安全的。如果对 List 类的类型 T 使用引用类型,则两个类的行为是完全相同的。但是,如果对类型 T 使用值类型,则需要考虑实现和装箱问题。 如果对类型 T 使用值类型,则编译器将特别针对该值类型生成 List 类的实现。这意味着不必对 List 对象的列表元素进行装箱就可以使用该元素,并且在创建大约 500 个列表元素之后,不对列表元素装箱所节省的内存将大于生成该类实现所使用的内存。
确保用于类型 T 的值类型实现 IEquatable 泛型接口。如果未实现,则诸如 Contains 这样的方法必须调用 Object.Equals(Object) 方法,后者对受影响的列表元素进行装箱。如果值类型实现 IComparable 接口,并且您拥有源代码,则还应实现 IComparable 泛型接口以防止 BinarySearch 和 Sort 方法对列表元素进行装箱。如果您不拥有源代码,则将一个
对象传递给 BinarySearch 和 Sort 方法。 使用 List 类的特定于类型的实现,而不是使用 ArrayList 类或自己编写强类型包装集合,这样是很有好处的。原因是您的实现必须做 .NET Framework 已经为您完成的工作,并且公共语言运行库能够共享 Microsoft 中间语言代码和元素据,这是您的实现所无法做到的。
下面的代码示例演示 List 泛型类的几个属性和方法。该代码示例使用默认构造函数创建一个容量为 0 的字符串列表。随后显示
属性,然后使用
方法添加若干个项。添加的项被列出,Capacity 属性会同
属性一起再次显示,指示已根据需要增加了容量。
该示例使用 Contains 方法测试该列表中是否存在某个项,使用
方法在列表的中间插入一个新项,然后再次显示列表的内容。
属性(C# 中的索引器)用于检索项, 方法用于移除前面添加的重复项的第一个实例,然后,该示例再次显示内容。Remove 方法总是移除它所遇到的第一个实例。 该示例使用
方法减小容量以匹配计数,然后显示 Capacity 和 Count 属性。如果未用容量已经小于总容量的 10%,则列表容量不会进行调整。 最后,代码示例使用
方法移除列表中的所有项,并显示 Capacity 和 Count 属性。
using System.Collections.G
public class Example
public static void Main()
List&string& dinosaurs = new List&string&();
Console.WriteLine("\nCapacity: {0}", dinosaurs.Capacity);
dinosaurs.Add("Tyrannosaurus");
dinosaurs.Add("Amargasaurus");
dinosaurs.Add("Mamenchisaurus");
dinosaurs.Add("Deinonychus");
dinosaurs.Add("Compsognathus");
Console.WriteLine();
foreach(string dinosaur in dinosaurs)
Console.WriteLine(dinosaur);
Console.WriteLine("\nCapacity: {0}", dinosaurs.Capacity);
Console.WriteLine("Count: {0}", dinosaurs.Count);
Console.WriteLine("\nContains(\"Deinonychus\"): {0}",
dinosaurs.Contains("Deinonychus"));
Console.WriteLine("\nInsert(2, \"Compsognathus\")");
dinosaurs.Insert(2, "Compsognathus");
Console.WriteLine();
foreach(string dinosaur in dinosaurs)
Console.WriteLine(dinosaur);
Console.WriteLine("\ndinosaurs[3]: {0}", dinosaurs[3]);
Console.WriteLine("\nRemove(\"Compsognathus\")");
dinosaurs.Remove("Compsognathus");
Console.WriteLine();
foreach(string dinosaur in dinosaurs)
Console.WriteLine(dinosaur);
dinosaurs.TrimExcess();
Console.WriteLine("\nTrimExcess()");
Console.WriteLine("Capacity: {0}", dinosaurs.Capacity);
Console.WriteLine("Count: {0}", dinosaurs.Count);
dinosaurs.Clear();
Console.WriteLine("\nClear()");
Console.WriteLine("Capacity: {0}", dinosaurs.Capacity);
Console.WriteLine("Count: {0}", dinosaurs.Count);
/* This code example produces the following output:
Capacity: 0
Tyrannosaurus
Amargasaurus
Mamenchisaurus
Deinonychus
Compsognathus
Capacity: 8
Contains("Deinonychus"): True
Insert(2, "Compsognathus")
Tyrannosaurus
Amargasaurus
Compsognathus
Mamenchisaurus
Deinonychus
Compsognathus
dinosaurs[3]: Mamenchisaurus
Remove("Compsognathus")
Tyrannosaurus
Amargasaurus
Mamenchisaurus
Deinonychus
Compsognathus
TrimExcess()
Capacity: 5
Capacity: 5
System.Collections.Generic.List 此类型的公共静态(在 Visual Basic 中为 Shared)成员是线程安全的。但不能保证任何实例成员是线程安全的。 只要不修改该集合,List 就可以同时支持多个阅读器。通过集合枚举在本质上不是一个线程安全的过程。在枚举与一个或多个写访问竞争的罕见情况下,确保线程安全的唯一方法是在整个枚举期间锁定集合。若要允许多个线程访问集合以进行读写操作,则必须实现自己的同步。 Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见。受以下版本支持:2.0受以下版本支持:2.0
此页面有用吗?
更多反馈?
1500 个剩余字符
我们非常感谢您的反馈。
您对此内容的反馈非常重要。请告诉我们您的想法。
更多反馈?
1500 个剩余字符
我们非常感谢您的反馈。
开发人员中心

我要回帖

更多关于 positive list system 的文章

 

随机推荐