台灣最大程式設計社群網站
線上人數
924
 
會員總數:246134
討論主題:189713
歡迎您免費加入會員
討論區列表 >> VB.NET >> 隱藏GridView的BounField 執行出現 從字串""至型別'Double'的轉換是無效的
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
隱藏GridView的BounField 執行出現 從字串""至型別'Double'的轉換是無效的
價值 : 40 QP  點閱數:247 回應數:4
樓主

Wiz
門外漢
0 9
183 31
發送站內信

各位前輩好,再次來請教了,如題,
今天我的GridView有14個BoundField,他們個別的DataField是A1~A14
長這樣子

我想要在選取checkbox1後(.Checked = True)
只顯示第一個BoundField(支店)以及正品件數~金額件數 總共7個BoundField
等於我隱藏了2~8個BoundField

於是我在RowDataBound函式寫了這段


並且把本來SQL查詢語法改成只Select A AS A1, B AS A9, C AS A10 以此類推一直 AS 到 A14
最後執行後出現以下錯誤

所以我在想是不是我For nii 後面的參數有設錯
或者是隱藏BoundField那段有錯誤

還麻煩各位前輩指點迷津!!

搜尋相關Tags的文章: [ VB.NET ] , [ GridView隱藏BoundField ] , [ 字串""至型別'Double'的轉換 ] ,
本篇文章發表於2019-11-20 16:42
1樓
作者回應

Wiz
檢舉此回應
更正 不是參數 是引數(索引值)
本篇文章回覆於2019-11-20 16:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
最有價值解答

Ader Chen
檢舉此回應

單從錯誤訊息猜測,
請將
If e.Row.Cells(nii).Text = 0 Then
改為
If Val(e.Row.Cells(nii).Text) = 0 Then
試試看
本篇文章回覆於2019-11-20 20:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

Wiz
檢舉此回應
謝謝Ader Chen大大,我稍後試試
另外想請問一下 如果我要在GridView外面設7個checkbox
然後根據checkbox的勾選 按下Button會分別隱藏我沒勾的欄位
SQL語法Select的地方也不會去新增沒勾的欄位
這樣有49種組合方式,如果我一個一個打If... Then會打到天荒地老,
有沒有甚麼方法能加快速度呢?

例如:
勾CheckBox1只會顯示本文第一張圖的"支店"跟"正品件數"到最後一欄的資料
勾CheckBox2會顯示"課"但隱藏除了自己之外的欄位,"正品件數"到最後一欄依然存在不會被隱藏
但如果我兩個都勾就會顯示"支店""課"以及前面一直提到的"正品件數"到"金額小計"
以此類推
可能會有勾1勾2勾3、勾1勾不勾2勾3......總共7X7=49種排列組合
如果依我上面用For迴圈去組Visible等於False的語法
不知道怎麼滿足像勾1不勾2勾3這種交錯顯示(本來3個都勾是顯示"支店""課""店",勾1不勾2勾3就是指顯示"支店""店"中間不顯示"課"這樣子)
本篇文章回覆於2019-11-21 11:34
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

Wiz
檢舉此回應
後來想想感覺可以先把支店到貨號的欄位先設成Visible = False
然後依Checkbox有沒有勾選來把它變成True就不用再用For迴圈來批次隱藏了
本篇文章回覆於2019-11-21 11:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.