vb.net相关内容
我编写了一些代码来处理事件,如下所示: AddHandler myObject.myEvent, AddressOf myFunction 一开始似乎一切正常,但是当我运行调试器时,我发现 myFunction 经常会在每次 myObject.myEvent 触发时运行几次.我发现我允许代码添加事件处理程序多次运行,导致了这种行为. 有没有办法让我做这样的事情? 如果 myObject
..
在过去的几天里,我问了几个关于代表的问题 这里和这里.我承认......我不太了解代表.我真的真的真的很想了解和掌握它们.(我可以定义它们——类型安全函数指针——但由于我对 C 类型语言的经验很少,所以它并没有真正的帮助.) 任何人都可以推荐一些在线资源,这些资源将以一种不假设的方式解释代表吗? 这是我怀疑 VB 实际上妨碍了我的那些时刻之一,因为它在幕后为我做了一些连接. 理想
..
从内存的角度来看(在使用后移除添加的处理程序等),WithEvents 和 Handles 的使用是否优于 RemoveHandler和 AddHandler? 一个相关的 Stack Overflow 问题是事件处理程序和内存泄漏. 解决方案 这取决于您要实现的目标.如果您有多个事件处理程序必须在表单/对象的生命周期内处理各种控件的事件,那么 WithEvents 和 Handle
..
在 C# 中,我可以这样做: EventHandler handler = this.SomeEvent; ...例如,这将允许我做: Delegate[] attachHandlers = handler.GetInvocationList(); 在 VB.NET 中,我似乎不知道如何做类似的事情. 这不起作用: Dim 处理程序 As EventHandler = Me.Som
..
我为 TextBox1 的 TextBox.Leave 事件编写了两个事件处理程序 原因是第一个处理程序是多个 TextBox.Leave 事件的通用处理程序,用于验证值,第二个处理程序特定于上述 TextBox1 它会计算一些值. 我的问题是,当 TextBox1.Leave 发生时,我能知道两个处理程序中的哪一个将首先执行吗? (我知道我可以将代码从通用处理程序中删除到 Tex
..
我正在为多个控件使用 ContextMenuStrip,并且我试图找出获取实际单击以打开上下文菜单的控件的最佳方法.发件人只提供了 ToolStripMenuItem 引用,它有一个 Owner 属性,该属性引用 ContextMenuStrip,但我不知道如何判断点击来自哪个控件.必须有一个简单的方法来检查这个,对吧?我在 ToolStripMenuItem 的点击事件中检查它. Friend
..
我担心我的代码有明显的问题,但是我遇到了一种情况,即当我创建和显示我的表单时 Form.Load 事件没有触发. 表单没有子类化(因为我在某些搜索中看到了一些问题),并且当我在调试器中单步执行代码时没有抛出任何错误. 我在 IDE 创建的表单加载函数(确实具有 Handles MyBase.Load 签名后缀)上设置了一个断点,但从未达到断点,并且表单确实显示和工作. 表单在构造
..
我正在为我的视觉基础课程制作游戏.我有多个图片框,单击它们会分别显示隐藏的图像.游戏的重点是找到匹配的图片(很简单). 在最简单的级别上,我有 16 个图片框.图片框的数量随着难度的增加而增加. 对于每个图片框,我目前有一个事件处理程序如下(默认由visual studio创建): Private Sub pictureBox1_Click(ByVal sender As Syste
..
如何(尝试)将单个字符串解析为“DD/MM/YYYY"格式的 DateTime?(VB.Net) 例如:我使用输入字符串“30/12/1999"(1999 年 12 月 30 日),如何(尝试)将其解析为 DateTime? 解决方案 试试这个: Dim date As Datetime = DateTime.ParseExact(_yourString, "dd/MM/yyyy"
..
将字符串转换为十进制的最简单方法是什么? 输入: a = 40000.00- 输出将是 40,000.00- 我尝试使用此代码: 将 a 变暗为字符串a = "4000.00-"a = 格式$(a, "#,###.##")控制台.writeline(一) 解决方案 使用Decimal.Parse转换成十进制数,然后使用.ToString("format here") 转换回字符
..
示例 1 Dim myStr As String = "38" 我希望我的结果是 38.000 ... 示例 2 myStr = "6.4" 我希望我的结果是 6.400 实现这一目标的最佳方法是什么?我想用至少 三个小数位 格式化一个 string 变量. 解决方案 使用格式编号: Dim myStr As String = "38"MsgBox(FormatNum
..
如果是个位数,我想在数字前附加 0.例如应该是 01,02,03... 09, 10, 11, ... 解决方案 Dim yourNumber as Int32 = 5yourNumber.ToString("D2") '= "05"
..
我有一个 VS2008 解决方案,有 2 个项目,WebUI 和 Domain;WebUI 引用域 WebUI项目中的Root Namespace为:MyCompany.MyProjectName.WebUI 域项目中的根命名空间是空白的.(所有类的命名空间都是手动声明的) 所以一切正常,直到我尝试通过完全限定的路径引用 Domain 中的一个类:MyCompany.MyProjec
..
我有一个 vb.net 3.5 类库项目,它需要引用两个具有相同命名空间的程序集.我们有两个第三方 dll,其中一个是 5.1 版,另一个是 6.1 版.它们具有相同的 dll 文件名,并且使用相同的命名空间和函数/类名.项目需要根据具体情况使用其中一种. 我研究了一个使用“外部别名"功能来拉入不同程序集的 c# 进程. http://blogs.msdn.com/b/ansonh/a
..
是否可以让一个类驻留在两个命名空间中,我该怎么做? 澄清一下:我们有一个类库(假设根命名空间是 classLib1),它随着时间的推移而增长(更多类),我想在逻辑上将类分组到不同的命名空间中.然而,一些较旧的类需要被分组到这些新的命名空间中(例如 classLib1.section1),这样做会破坏使用这个类库的其他程序集中的遗留代码.所以我希望能够使用两个名称空间来引用一个类,直到我们可以
..
我有一个程序集(作为 ReflectionOnly 加载),我想找到该程序集中的所有命名空间,以便将它们转换为自动生成的源代码文件的“使用"(VB 中的“导入")语句模板. 理想情况下,我只想将自己限制在顶级命名空间中,所以不要: 使用系统;使用 System.Collections;使用 System.Collections.Generic; 你只会得到: 使用系统; 我注意到 S
..
我有一台安装了 Mercury Quick Test Professional 9.2 的虚拟机 (VMware).我有一个脚本来测试应用程序,使用 Infragistics 库在 VB.NET 中编写. 如果我使用笔记本电脑(使用远程桌面)访问此虚拟机,一切正常,脚本完成没有问题.我的笔记本电脑运行 XP,带有 Windows Classic 主题. 如果我使用另一台机器(使用远程桌
..
我熟悉用于业务层单元测试的 nunit,但是我现在正在寻找自动化 win 表单 gui 层的测试. 我见过 watin 和 watin 记录器,用于通过访问控件和自动化它们来自动化 Web 应用程序测试.但是,我正在努力为 Windows 窗体(用 c# 或 vb.net 编写)找到一个等效的 watin,最好是开源的. 是否存在或所有产品都基于记录鼠标和键盘按下? 更新:我看过
..
我们的 VB.NET 项目使用来自 Vivid Solutoins (com.vividsolutions.jts.geom.Geometry) 的 Java 库来进行几何计算.帮助在这里:http://tsusiatsoftware.net/jts/javadoc/com/vividsolutions/jts/geom/Geometry.html 我想不通的是专门用于 Buffer 属性的
..
我有一个程序,我可以用鼠标在四个方向中任意一个方向绘制一个矩形. 这些矩形在图片框上用于裁剪图像的一部分. 绘制这些矩形时必须保持给定尺寸的比例,例如 320 x 200. 我希望这个工具的行为与 Photoshop 中的裁剪工具非常相似,或者类似于此处的裁剪示例:https://imageresize.org/ 我的大部分元素都能正常工作,我只是在一些几何计算上苦苦挣扎.
..