我在这里有一点问题:但这个问题适用于任何方法重载。
我有一个方法声明,例如:(女巫不完全符合要求)
Public Shared Sub SetGridFormat(ByRef grid As DataGrid, ByVal width As Integer, ByVal height As Integer, ByVal paging As Boolean)
所以我想为我需要这个的情况写一个重载:
Public Shared Sub SetGridFormat(ByRef grid As DataGrid, ByVal width As Unit, ByVal height As Unit, ByVal paging As Boolean)
这两个声明是相同的,但高度和宽度的类型。我收到“重载解析失败,因为没有可访问的 'SetGridFormat' 最适合这些参数”错误。
问题是:vb.net 是否允许“默认”定义方法,以防构建器无法决定使用哪一个以及语法是什么?
帮助的坦克。
编辑:这两个电话看起来像:
SetGridFormat(dg, New Unit(100, UnitType.Percentage), New Unit(100, UnitType.Percentage), True)
SetGridFormat(dg, 100, 100,True)
从回复中,我只需要指定一些内容:大多数答案在大多数情况下都可以使用,但排除我必须处理的有问题的情况,其中 2 个值可以设置为空(不需要特定大小)。
SetGridFormat(dg, Nothing, Nothing, True)
在这种情况下,从编译器的角度来看,两个方法声明是相同的:
这可能是问题的根本原因。如果这些情况不存在,我会非常失望。:(
我的问题是有没有办法强制编译器在这种情况下使用特定的方法调用?