Tag: vb.net

在Visual Basic中等价于| =

什么是Visual Basic中的| =运算符的等价物? 例如(C#): flags |= MyEnum.SomeFlag

如何从JToken填充现有对象(使用Newtonsoft.Json)?

根据http://www.newtonsoft.com/json/help/html/PopulateObject.htm,您可以按JSON字符串中定义的值更新现有实例。 我的问题是我必须填充对象的数据已经被解析为JToken对象。 我目前的方法看起来像这样: Private Sub updateTarget(value As JToken, target as DemoClass) Dim json As String = value.ToString(Formatting.None) JsonConvert.PopulateObject(json, target) End Sub 有没有更好的方法来实现这一点,而不必“恢复”在创建JToken时已经完成的解析?

从Path获取文件夹名称

如果我有像“C:\ My Documents \ Images \ Image1.png”这样的文件路径,如何获取“Image1.png”文件的父文件夹名称? 在这种情况下,“图像”,但这只是一个样本。 我查看了System.IO.Path ,似乎没有任何东西。 也许我忽略了它,但我不知道它会在哪里。

如何在WinForms选项卡控件中指出要从哪个选项卡移动到哪个选项卡?

我需要确定用户来自哪个选项卡,以及切换选项卡时可能取消切换的选项卡。 我尝试了取消选择,取消选择,选择,选择的事件,并且所有这些事件都显示e.TabPageIndex与sender.SelectedIndex相同。 是否存在我可以使用的事件或属性,以便我可以确定其中的两个方面,或者我是否必须通过从一个事件缓存它并在新事件中使用该值来破解某些内容。 我试图避免处理取消选择/取消选择的事件并缓存要在选择事件中使用的值。 我已经知道我可以做到这一点,所以我问是否有一种更清洁的方式,而不是这样做。 我已经在C#和VB中尝试过,结果相同(毫不奇怪)。 谢谢。

为什么我可以将索引器应用于VB.Net中的ICollection,而不是C#中

将一些代码从VB.Net转换为C#,当我遇到这个时,在使用Ionic Zip库的一些代码中: Dim zipEntry1 As ZipEntry = zipFile1.Entries(0) 很简单: ZipEntry zipEntry1 = zipFile1.Entries[0]; 我在C#上遇到这个错误: 无法将带有[]的索引应用于类型为“System.Collections.Generic.ICollection”的表达式 两者都使用相同版本的DLL,在两个zipFile1.Entries都是一个通用的ICollection 。 我在VB.Net上测试了下面的内容,它成功构建: Option Strict On Option Explicit On Imports Ionic.Zip Module Module1 Sub Main() Dim zipFile1 = ZipFile.Read(“C:\test”) Dim zipEntry = zipFile1.Entries(0) End Sub End Module 这不构建: using Ionic.Zip; namespace ConsoleApplication2 { class Program { static void Main(string[] args) […]

有没有办法在VB.NET中知道是否为事件注册了处理程序?

在C#中,我可以测试一下…… public event EventHandler Trigger; protected void OnTrigger(EventArgs e) { if (Trigger != null) Trigger(this, e); } 有没有办法在VB.NET中执行此操作? 测试null我的意思是? 更多信息 我忘了提。 我有用C#编写的类,但我在VB.NET中编写unit testing。 我在unit testing中尝试这个… If myObject.Trigger IsNot Nothing Then ”#do something End If 这导致编译时错误,该错误表示……“公共事件触发器是一个事件,无法直接调用。使用RaiseEvent语句引发事件。” 赛斯

为什么你可以在VB.NET中为整数分配Nothing?

为什么我允许在VB.NET中为Ntype赋值: Dim x as Integer = Nothing 但我不允许在C#中指定null : int x = null;

VB的Dim和C#的var一样吗?

这是一个小小的疑问:在VB上,我可以使用Dim声明变量。 在C#中,我可以使用var声明。 我更熟悉C#的复杂性,我知道var使用类型推断来确定变量的类型。 但我不确定’Dim’是做什么的。 我在SO上看似这个问题 ,但它没有比较两个关键字。 如果有区别,有人可以告诉我哪个?

阴影(VB.NET)和新(C#)之间的区别

简单的问题来自一个简单的问题:VB.NET中的Shadows关键字和C#中的New关键字有什么区别? (关于当然的方法签名)。

从多个数组生成所有可能的组合(C#/ VB.NET)

我有n个数组,每个数组可能包含n个元素。 我必须通过从每个数组中获取一个元素来生成所有可能的值组合。 我需要C#/ VB.NET语言的帮助。 以下是一个例子。 Arr1:(a,b,c)Arr2:(1,2)Arr3:(x,y,z) 我希望组合为(将有3 * 2 * 3 = 18种组合)a1x a1y a1z a2x a2y a2z b1x b1y b1z b2x b2y b2z c1x c1y c1z c2x c2y c2z 如果我有4个arrays,将有36个组合。 Arr1:(a,b,c)Arr2:(1,2)Arr3:(x,y,z)Arr4:(m,n) 组合: a1xm a1xn a1ym a1yn a1zm a1zn …… …… …… …… …… …… ……