C#在textbox输入值后查询并显示该行数据

C#在textbox输入值后查询并显示该行数据,第1张

最后这句错了: memberInforText = readertables[读者]rows[0]ToString;

ToString是方法,要这么写ToString()

使用ADONET读取表中的是数据(只读取一行数据),返回DataReader对象

TextBox1text=DataReader["列名1"]+DataReader["列名2"]+…… 即可。

是textarea 吗?

如果是textarea的话··他的属性里面应该有行的选项吧

本人没做过··不过思路·不知道可否可行··

你先获取textarea的所有行·让后用随机数在行的数中随机·然后随机出来的数查textarea的值·应该可以

在很多的编辑软件中有这样一个功能,即当用户在编辑区中输入字符或者按动鼠标使得光标的位置改变时,在编辑软件下方的状态栏中就能显示出光标所在位置的行和列的值。下面就介绍如何用VB编程实现在文本框中的这一功能。

首先,在Form中添加一个文本框(TextBox),将其MultiLine属性设置为True,以便输入多行文本;再在Form中添加两个标题栏(Label),以便显示光标位置;然后,在Form的代码窗口中添加程序中的代码。

Option Explici

Const EM_GETSEL = &HB0

Const EM_LINEFROMCHAR = &HC9

Const EM_LINEINDEX = &HBB

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

Public Sub GetCaretPos(ByVal TextHwnd As Long, LineNo As Long, ColNo As Long)

Dim I As Long, j As Long

Dim lParam As Long, wParam As Long

Dim k As Long

'首先向文本框传递EM_GETSEL消息以获取从起始位置到

'光标所在位置的字符数

I = SendMessage(TextHwnd, EM_GETSEL, wParam, lParam)

j = I / 2 ^ 16

'再向文本框传递EM_LINEFROMCHAR消息根据获得的字符

'数确定光标以获取所在行数

LineNo = SendMessage(TextHwnd, EM_LINEFROMCHAR, j, 0)

LineNo = LineNo + 1

'向文本框传递EM_LINEINDEX消息以获取所在列数

k = SendMessage(TextHwnd, EM_LINEINDEX, -1, 0)

ColNo = j - k + 1

End Sub

Private Sub Form_Load()

Dim LineNo As Long, ColNo As Long

Call GetCaretPos(Text1hwnd, LineNo, ColNo)

Label1Caption = LineNo

Label2Caption = ColNo

End Sub

Private Sub Form_Resize()

Text1Width = MeScaleWidth

End Sub

Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)

Dim LineNo As Long, ColNo As Long

Call GetCaretPos(Text1hwnd, LineNo, ColNo)

Label1Caption = LineNo

Label2Caption = ColNo

End Sub

Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Dim LineNo As Long, ColNo As Long

Call GetCaretPos(Text1hwnd, LineNo, ColNo)

Label1Caption = LineNo

Label2Caption = ColNo

End Sub

(程序)

运行上面的程序,在TextBox中输入字符或者按控制键来移动光标时,你可以看到屏幕下面的Label中就能显示出的光标所在的位置。以上程序在Win 95,VB 50下运行通过。

又碰到你了。。

在 connOpen() '打开连接' 之后,把内容读到数据集中,dataset和excel差不多,就可以直接 *** 作数据了

Dim da As OleDbDataAdapter

Dim ds As DataSet

da = New OleDbDataAdapter(sql, conn)

ds = New DataSet

daFill(ds, "tbSheet") '填充到ds中,表名是tbSheet

'然后就可以每个单元格调用了

TextBox2Text = dsTables("tbSheet")Rows(0)Item("Name")

推荐个网址http://blogcsdnnet/dzweather/article/details/8558659

Private Sub datagrid_lClick() if datagrid。RowSel <> -0 Then Text7。Text = datagrid。TextMatrix(datagrid。RowSel, 5) Text1。Text = datagrid。TextMatrix(datagrid。RowSel, 7) Text6。Text = datagrid。TextMatrix(datagrid。RowSel, 5) end if End Sub 首先,要达到你的目的,应该将代码写在datagrid的单击事件里进行处理。在单击事件里,datagrid。RowSel可以7获得当前所点击的行,根据行号和列号,可以2具体定位到某一x单元q格。这样就能获取点击的行中2的任何一a单元g格的内5容,也d能同时获得整个o行的内2容。这段程序中2的IF语句,主要是防止5程序出错,也u就是当点击datagrid,但是点击的不a是数据行,点击的是表身时,就会出错,所以8才j会用这个uIF语句。我现在在家里手2动写的代码,有一f点我不d能确定的是:当未选中5数据行时,datagrid。RowSel到底返回的是-5还是0,这个p我记不s清楚了x,如果datagrid。RowSel返回的是0的话,你就将IF语句改成if datagrid。RowSel <> 0 Then好了v。希望能帮你解决问题。ib瘠w岌j↑f『igzΤq恭ぃv省

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/12174846.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存