- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我遇到这些错误时,我试图使用 datagridview 显示我的查询结果...
DataGridView 中发生以下异常:
System.ArgumentException: Parameter is not valid.
at System.Drawing.IMage.FromStream(Stream stream, BooleanuseEmbeddedColorManagement, Boolean validateImageData)
at System.Drawing.ImageConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
at System.Windows.Forms.Formatter.FormatObjectInternal(Objectvalue, Type targetTyep, TypeConverter sourceConverter, TypeConverter targetConverter, String formatString, IFormatProvider formatInfo, Object formattedNullValue)
at System.Windows.Forms.Formatter.FormatObject(Object value, Type targetType, TypeConverter sourceConverter, TypeConverter targetConverter, String formatString, IFormatProvider formatInfo, Object formattedNullValue, Object dataSourceNullValue)
at System.Window.Forms.DataGridViewCell.GetFormattedValue(Object value, Int32 rowIndex, DataGridViewCellStyle& cellStyle, TypeConverter valueTypeConverter, TypeConverter formattedValueTypeConverter, DataGridViewDataErrorContexts context)
To replace this default dialog please handle the DataError event.
嗯,当我使用 datagridview 时,我确实收到了类似 8 个这样的对话框,但是,当我使用断点运行逐行检查时,我不会收到任何错误提示!我认为是这个datagridview。我已经尝试删除 datagridview 并只是放置一个新的,但存在同样的问题。
供您引用,这是我将数据放入 datagridview 时使用的代码:
Public Sub fillDGVBulk()
Try
Dim bulkCmd As New MySqlCommand("select * from " _
+ "( " _
+ " select controlno, bulk.catid, bulk.bcode, " _
+ " ( " _
+ " bulk.itemqty " _
+ " ) as stock, " _
+ " case when resv.qty is null then " _
+ " '0' else resv.qty end as booked, " _
+ " case when " _
+ " ( " _
+ " bulk.itemqty-sumqty " _
+ " ) is null then " _
+ " bulk.itemqty else (bulk.itemqty-sumqty) end as available, bulk.itemname, bulk.deptcode, bulk.loccode, resv.resdate, resv.timestart, resv.timeend " _
+ " from tbl_items_bulk bulk " _
+ " left join " _
+ " ( " _
+ " select rs.controlno, rs.bcode, rs.qty, sum(rs.qty) as sumqty, rs.resdate, rs.timestart, rs.timeend " _
+ " from tbl_reservations rs " _
+ " where retdate is null " _
+ " and restype='1' " _
+ " and resdate = @date " _
+ " and not " _
+ " ( " _
+ " (timestart between @tStart and @tEnd) or " _
+ " (timeend between @tStart and @tEnd) or " _
+ " (timestart <= @tStart and timeend >= @tEnd) " _
+ " ) " _
+ " or rs.bcode is null " _
+ " and (claimdate is null and retdate is null) " _
+ " group by bcode " _
+ " ) resv " _
+ " on bulk.bcode=resv.bcode " _
+ " where ((bulk.itemqty-sumqty) >= 1) or (bulk.itemqty-sumqty) is null " _
+ " order by resdate, timestart " _
+ ") rvs " _
+ "where rvs.catid=@catid " _
+ "order by controlno", conn)
With bulkCmd
.Parameters.AddWithValue("@catid", cbo_catbulk.SelectedValue.ToString)
.Parameters.AddWithValue("@date", dtp_datebulk.Value.ToString)
.Parameters.AddWithValue("@tStart", cbo_startbulk.SelectedValue.ToString)
.Parameters.AddWithValue("@tEnd", cbo_endbulk.SelectedValue.ToString)
End With
Dim DAdapter2 As New MySqlDataAdapter()
DAdapter2.SelectCommand = bulkCmd
If conn.State = ConnectionState.Open Then
conn.Close()
conn.Open()
Else
conn.Open()
End If
Dim table2 As New DataTable
DAdapter2.Fill(table2)
DataGridView2.DataSource = table2
conn.Close()
'controlno, catid, bcode, stock, booked, available, resdate, timestart, timeend
With DataGridView2
.Columns(0).Visible = False
.Columns(1).HeaderText = "Category ID"
.Columns(2).HeaderText = "Barcode"
.Columns(3).HeaderText = "Stock"
.Columns(4).HeaderText = "Booked"
.Columns(5).HeaderText = "Available"
' .Columns(5).DefaultCellStyle.BackColor = Color.LightGreen
.Columns(6).HeaderText = "Item"
.Columns(7).HeaderText = "Department"
.Columns(8).HeaderText = "Storage Area"
.Columns(9).Visible = False
.Columns(10).Visible = False
.Columns(11).Visible = False
End With
Catch ex As Exception
MsgBox(ex.Message.ToString + " Error No: " + Err.Number.ToString)
End Try
End Sub
有人可以帮我吗?提前致谢! :)
最佳答案
我在这里尝试一个疯狂的猜测..
在运行时,虽然此代码将 table2 设置为 DataGridView 的数据源,
DataGridView2.DataSource = table2
这些代码立即运行...
With DataGridView2
.Columns(0).Visible = False
.Columns(1).HeaderText = "Category ID"
.Columns(2).HeaderText = "Barcode"
.Columns(3).HeaderText = "Stock"
.Columns(4).HeaderText = "Booked"
.Columns(5).HeaderText = "Available"
' .Columns(5).DefaultCellStyle.BackColor = Color.LightGreen
.Columns(6).HeaderText = "Item"
.Columns(7).HeaderText = "Department"
.Columns(8).HeaderText = "Storage Area"
.Columns(9).Visible = False
.Columns(10).Visible = False
.Columns(11).Visible = False
End With
这将重命名/隐藏列。
而是重命名 DataGridView2 的列标题文本,我认为这会导致运行时错误,因为它还没有结果集的列。
为什么不在 SELECT 语句上使用 AS 关键字,以便可以重命名列名查询的结果集。
在您的初始选择语句中尝试此操作..
Dim bulkCmd As New MySqlCommand("select catid AS `Category ID`, bcode AS `Barcode`, stock AS Stock, booked AS `Booked`, available AS `Available`, resdate AS `Item`, timestart AS `Department`, timeend AS `Storage Area` from " _
关于mysql - 如何修复DataGridView错误: Is it possible that my null field result in MySQL query is the cause?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21796656/
我有点困惑为什么在 RoutineRetrieved 函数中分配 ACTIVITYIMAGE 时使用 result.getInt(2) 并在分配 SLOT 时使用 result.getInt(3)..
我是android领域的新手,我想从响应json数组访问每个结果元素,但我无法做到这一点,我试图获取每个元素,但我只得到一个值“rohit1”是第一个元素。请帮助我。 我是 rohit parmar,
我只有从 sql 查询返回的一行 (count(*)),但在执行包时,它向我显示上述错误,并且包失败。 我将结果类型设置为“单行”,并将查询的输出(select count(*) as 'result
我正在尝试使用Diesel将简单的原始SQL转换为MySQL,如本示例所示: https://docs.diesel.rs/diesel/fn.sql_query.html let users = s
我正在尝试 Play 框架的第一个示例,但出现了此错误 在我的路线文件中: # API # ~~~~ GET /api/geotweets/index controllers.api.GeoTw
这段代码可以返回null吗? (this.Result == Result.OK) 此行(或类似行)是否可以返回除 true 或 false 之外的任何内容(例如 null)? 最佳答案 (this.
我有一个 SSIS 执行 SQL 任务。它返回一个完整的结果集(即一个表)。但是,当我执行包时出现以下错误。我已经正确地为返回的结果集命名。 [执行 SQL 任务] 错误:对于完整的结果集和 XML
最近我刚刚将 swift 2.3 项目转换为 3.2,alamofire 也得到了转换,我收到了很多问题,其中大部分都已解决,现在我被给定的两个问题所困扰 问题在 alamofire 的 Respon
我在 R 中收到以下错误消息: Error in .verify.JDBC.result(r, "Unable to retrieve JDBC result set", : Unable to r
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 去年关闭。
我正在使用一个简单的命令运行以下存储过程sp_MSforeachdb。我的问题是如何限制结果仅显示至少有 1 条记录满足命令的数据库: 这是我的存储过程: EXECUTE master.sys.sp_
我在单独的线程中运行一些代码: fn f1() -> Result { Err("err1".to_string()) } fn f2() -> Result { Err("err2"
我在这里尝试使用 AsyncTask 从 OWM API 显示 7 天的天气预报。 doInBackground(String...param) 方法也工作正常。我检查了 LOGCAT。 异步完成执行
我已经创建了mysql的索引和全文索引,后端存储引擎是MyISAM。 mysql> show index from play_movie; +------------+------------+---
我有一个表articles,它的结构如下: id, name, date, contents 我有一个表authors,它的结构如下: id, article_id, name, email 一篇文章
我很困惑我们是否应该创建单独的 API 来获取结果和结果计数,或者我们应该只根据结果 API 中的查询字符串来获取计数。 /api/results/ : Fetches all records /ap
我正在制作一个将两个数字相除的系统,如果第二个数字不存在,它将选择第一个数字。这是代码: let new_num: f32 = match num1/num2 { Ok(num) => n
这个问题在这里已经有了答案: Why am I getting "unused Result which must be used ... Result may be an Err variant,
我正在修改 the texture synth 中的示例之一项目: use texture_synthesis as ts; fn main() -> Result { //create a
这个问题已经有答案了: 已关闭11 年前。 Possible Duplicate: ^ operator in java 我假设 c ^ d是一个类似“的幂”的计算,所以c = 5 , d = 2 ,
我是一名优秀的程序员,十分优秀!