不確定。如果DataGridView1綁定了一個數(shù)據(jù)表,這個Cell的數(shù)據(jù)類型應(yīng)該與表中對應(yīng)字段的數(shù)據(jù)類型一致,否則就與DataGridView1自己定義的這個Cell的數(shù)據(jù)類型相同。
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的海倫網(wǎng)站設(shè)計(jì)、移動媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim shkcode1 As String
Dim shimei1 As String
Dim inymd1 As String
Dim sqlstr As String
' Dim dr As DataRow
shkcode1 = DataGridView1.Rows(4).Cells(0).Value
shimei1 = DataGridView1.Rows(4).Cells(1).Value
inymd1 = DataGridView1.Rows(4).Cells(2).Value
sqlstr = " insert into EA_M1施設(shè)職員(shkcode,shimei,inymd) values ('" shkcode1 "','" shimei1 "','" inymd1 "')"
Dim connection As New OracleConnection("連接字符串")
Dim cmd As New OracleCommand(sqlstr, connection)
Try
connection.Open()
Dim rows As Integer = cmd.ExecuteNonQuery()
if rows 0 then
'說明執(zhí)行成功了.可以做之后的操作
end if
Catch E As System.Data.OracleClient.OracleException
connection.Close()
Throw New Exception(E.Message)
End Try
end sub
ps:建議去學(xué)學(xué)ADO.Net 不難的.
tables有兩個嗎 如果只有一個數(shù)據(jù)表的話應(yīng)該是ds.Tables(0)
1月19日補(bǔ)充回答:
你這段代碼都沒有ds的聲明和賦值啊……
如果你想用ds的話,可以試試這樣的代碼:
Conn = New SqlConnection() '連接本地SQL Server數(shù)據(jù)庫
Conn.ConnectionString = "Data Source=(local);Initial Catalog=dat;Integrated Security=false;User ID=sa;Password="
Conn.Open()
Dim ds As New DataSet
Dim da As New SqlClient.SqlDataAdapter(("select * from tablename", Conn)
da.Fill(ds)
Dim bs As New BindingSource()
bs.DataSource = ds
DataGridView1.DataSource = bs
If ds.Tables(0).Rows.Count 0 Then
MsgBox("有記錄")
End If
Conn.Close()
當(dāng)前單元格指的是 DataGridView 焦點(diǎn)所在的單元格,它可以通過 DataGridView 對象的 CurrentCell 屬性取得。
如果當(dāng)前單元格不存在的時候,返回Nothing(C#是null)[VB.NET]
' 取得當(dāng)前單元格內(nèi)容
Console.WriteLine(DataGridView1.CurrentCell.Value)
' 取得當(dāng)前單元格的列 Index
Console.WriteLine(DataGridView1.CurrentCell.ColumnIndex)
' 取得當(dāng)前單元格的行 Index
Console.WriteLine(DataGridView1.CurrentCell.RowIndex) [C#]
// 取得當(dāng)前單元格內(nèi)容
Console.WriteLine(DataGridView1.CurrentCell.Value);
// 取得當(dāng)前單元格的列 Index
Console.WriteLine(DataGridView1.CurrentCell.ColumnIndex);
// 取得當(dāng)前單元格的行 Index
Console.WriteLine(DataGridView1.CurrentCell.RowIndex);
另外,使用 DataGridView.CurrentCellAddress 屬性(而不是直接訪問單元格)來確定單元格所在的行:DataGridView.CurrentCellAddress.Y 和列: DataGridView.CurrentCellAddress.X 。
這對于避免取消共享行的共享非常有用。
你是想獲取總行數(shù)?還是選中行和列的索引?
獲取總行數(shù):dataGridView1.Rows.Count;
獲取當(dāng)前選中行索引:int
i
=
this.dataGridView1.CurrentRow.Index;
獲取當(dāng)前選中列索引:int
j
=
this.dataGridView1.CurrentCell.ColumnIndex;
datagrid不行,因?yàn)閐atagrid綁定數(shù)據(jù)庫,因此不能添加一個附加行。即使在SQL命令中通過union方式進(jìn)行統(tǒng)計(jì)后顯示,但又會導(dǎo)致datagrid不能新增。解決辦法有2個:1、用MSFlexGrid;2、自己寫一個用戶控件,大概意思就是里面有2個datagrid,一個大的,專門顯示記錄,一個小的,不要標(biāo)題行,專門顯示合計(jì)數(shù);在里面增加寫代碼使它們水平同步滾動。