Tag: vb.net

从C#表单启动VB表单

我和我的一个朋友正在上课。 他更喜欢VB,我更喜欢C#,所以我们只是做了我们的事情。 现在,我们正在考虑合并这些项目。 我把他加入我的,但我找不到如何打开他从我制作的表格中制作的表格。 有没有办法从C#表单启动VB表单?

使用多选项向上或向下移动一些复杂的DataGridView行

我有一个像这样的DataGridView: 现在,在C#或者VB.Net中 ,有了一个按钮,我想向上或向下移动所选行的一个位置,我怎么能这样做? 多选的必要条件使我复杂化。 DataGridView中出现的文件将合并为一个可执行文件,然后,文件将按“ Order ”列的顺序执行,因此在向上或向下移动行时,“ Order ”值应该是不可变的。 我没有使用任何数据源。 我试图从MSDN分析这个示例,它包含一些扩展方法,但它需要一个数据表和数据源,我没有任何使用数据和数据源的失望但只是我不知道如何适应我的DataGridView的代码示例。 无论如何,样本不支持多选: 向上/向下移动行并记住DataGridView和ListBoxs数据绑定的顺序 我也在StackOverflow上看到了一些关于这个问题的C#问题,但他们要求选择单行: 如何在KeyUp或Keydown上按下向上/向下移动gridview所选行 DataGridView选定的行向上和向下移动 然后,我没有一个起点,只是这些方法移动一个也不保留Order值的SINGLE行,如果有人可以指导我扩展我的需求的function:Private Sub Button_MoveUp_Click(sender As Object,e作为EventArgs)_处理Button_MoveUp.Click Me.MoveUpSelectedRows(Me.DataGridView_Files) End Sub Private Sub Button_MoveDown_Click(sender As Object, e As EventArgs) _ Handles Button_MoveDown.Click Me.MoveDownSelectedRows(Me.DataGridView_Files) End Sub Private Sub MoveUpSelectedRows(ByVal dgv As DataGridView) Dim curRowIndex As Integer = dgv.CurrentCell.RowIndex Dim newRowIndex As Integer = […]

使用asp.net获取Web浏览器控件源

如何在页面后面的asp.net代码中使用WebBrowser()控件获取另一个Web站点的源代码。 到目前为止,我有这个,但没有任何选项导航或设置cookie或获取页面加载源? 你能帮忙吗? Imports System.Windows.Forms Partial Class _Default Inherits System.Web.UI.Page Dim a As WebBrowser = New WebBrowser() webBrowser1.Navigate(“http://www.google.com”) ‘get the source End Class 我得到了这个错误 ActiveX控件’8856f961-340a-11d0-a96b-00c04fd705a2’无法实例化,因为当前线程不在单线程单元中。

System.String 和System.String C#的区别

编辑 :我知道C#相当于For Each server As String In servers是foreach(var item in servers) For Each server As String In servers中的foreach(var item in servers)但是由于GetOPCServers返回对象,因此应该将其转换为可迭代类型。 我正在使用COM库开发应用程序。 由于64bit导致问题,我的目标CPU x86。 除GetOPCServers()外,所有方法都按预期工作。 虽然使用相同的dll的Visual Basic代码不会导致问题,但C#抛出System.InvalidCastException说: A first chance exception of type ‘System.InvalidCastException’ occurred in System.Core.dll Additional information: ‘System.String[*]’ türündeki nesne ‘System.String[]’ türüne atılamadı. 为我的土耳其语OS提供错误消息道歉。 System.String[*]类型中的对象无法分配给System.String[] System.String[*]和System.String[]之间的差异是什么? 使用相同dll的VB代码无例外地运行 Public Class OpcInfo Dim servers As […]

.Net如何获取Webbrowser中单击元素的ID

我想在Webbrowser中获取所单击元素的HTML Id。 示例:如果我单击Google搜索按钮,它应该为我提供所单击元素的HTML ID(在本例中为按钮) 我该怎么做? 编辑:Webbrowser = Web浏览器控件

.Net使用Lockbits从位图获取RGB值

我使用下面的代码从图像中提取RGB值,有时这是有效的,但是在某些文件上(似乎Stride不能被位图的宽度整除)它返回混合值: Dim rect As New Rectangle(0, 0, bmp.Width, bmp.Height) Dim bmpData As System.Drawing.Imaging.BitmapData = bmp.LockBits(rect, Imaging.ImageLockMode.ReadOnly, Imaging.PixelFormat.Format24bppRgb) Dim ptr As IntPtr = bmpData.Scan0 Dim cols As New List(Of Color) Dim bytes As Integer = Math.Abs(bmpData.Stride) * bmp.Height Dim rgbValues(bytes – 1) As Byte System.Runtime.InteropServices.Marshal.Copy(ptr, rgbValues, 0, bytes) ‘ Retrieve RGB values For i = modByte […]

自定义数据表与分页

我使用我的自定义DataTable作为我的ListView的DataSource 。 现在,我面临的问题是Paging不起作用。 我想要做的是,当我点击第1页,第2页,依此类推,我应该一次只能获取10行。 我的意思是,当页面加载时我想只获取前10行,点击2我想获取接下来的10行。 但是,在第1页上单击返回不应再次执行SQL语句,只需从某处获取数据( ViewState / Cache )。 什么是正确的方法? 我该怎么办? 注意:我不想使用SQL DataSource

通过其进程名称取消隐藏进程?

前一段时间我写了一个隐藏/恢复进程窗口的代码,我做的是这样的: 隐藏进程: 1)在正在运行的进程中查找进程名称。 2)将MainWindowHandle添加到Container(在本例中为Dictionary),稍后取消隐藏该过程是必要的。 3)使用ShowWindow API函数隐藏进程。 取消隐藏流程: 1)在正在运行的进程中查找进程名称。 2)从容器中检索指定进程的已保存MainWindowHandle。 3)使用ShowWindow API函数取消隐藏进程。 为什么我使用字典来取消隐藏进程?嗯,因为隐藏进程的MainWindowHandle值为0 ,所以这是我找到的唯一方法来检索在ShowWindow函数中使用的正确句柄来恢复进程。 但我真的不想依赖于Hide进程之前保存所需HWND的Hide方法,我想通过指定进程名称知道如何在VB.NET或C#中执行取消隐藏操作来改进这一切。 (例如: cmd.exe )在MainWindowHandle之前没有保存,这可能吗? 我展示了代码(在VB.NET中),让您了解我为HideProcess方法做了些什么: 但请注意,此代码与问题并不完全相关,我的问题是如何仅通过指定进程名称取消隐藏进程名称以避免下面编写的代码需要检索已保存的句柄以取消隐藏进程。 ‘ Hide-Unhide Process ‘ ‘ Usage Examples : ‘ ‘ HideProcess(Process.GetCurrentProcess().MainModule.ModuleName) ‘ HideProcess(“notepad.exe”, Recursivity:=False) ‘ HideProcess(“notepad”, Recursivity:=True) ‘ ‘ UnhideProcess(Process.GetCurrentProcess().MainModule.ModuleName) ‘ UnhideProcess(“notepad.exe”, Recursivity:=False) ‘ UnhideProcess(“notepad”, Recursivity:=True) Private ProcessHandles As New Dictionary(Of String, IntPtr) Private Shared Function […]

LINQ在DataTable上选择distinct不起作用

我有以下数据 – 让我们说名为MyTable : Col1: Col2: Col3: Col4: 1 abc def 2 abc def ghi 1 abc def 3 abc def 1 abc def 而我正试图获得不同的行: Col1: Col2: Col3: Col4: 1 abc def 2 abc def ghi 3 abc def 我尝试了以下LINQ语句: MyTable = (From dr As DataRow In MyTable Select dr).Distinct.CopyToDataTable 但它正在将重复行返回原始数据表返回给我。 我做错了什么以及如何获得我想要的输出?

.NET如何捏造HttpContext对象

对于unit testing,我试图向HttpApplicationState对象添加一个值,该对象是HttpContext.Current类的Application属性。 我尝试使用以下代码 TextWriter tw = new StringWriter(); HttpWorkerRequest wr = new SimpleWorkerRequest(“/webapp”, @”path…”, “logon.asp”, “”, tw); HttpContext.Current = new HttpContext(wr); //I try the following 2 lines HttpContext.Current.Application[“KeyValue”] = “myValue”; HttpContext.Current.Application.Add(“KeyValue”, “myValue”); var count = HttpContext.Current.Application.Count; var get1 = HttpContext.Current.Application[“KeyValue”]; var get2 = HttpContext.Current.Application.Get(“KeyValue”); 但是HttpContext.Current.Application.Count始终为零。 价值观没有得到 我究竟做错了什么?