台灣最大程式設計社群網站
線上人數
1016
 
會員總數:245475
討論主題:189234
歡迎您免費加入會員
討論區列表 >> VB.NET >> ComboBox1.SelectedIndex = -1 指令問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
ComboBox1.SelectedIndex = -1 指令問題
價值 : 50 QP  點閱數:1130 回應數:9

樓主

培根
門外漢
0 43
1121 136
發送站內信

各位高手 我想請問一個問題
我有兩個ComboBox 我的DropDownStyle屬性是設DropDownList
我在使用SelectedIndex 出現了一個小問題

當ComboBox1有文字 而我選擇ComboBox2 兩個都會空白
當ComboBox2有文字 而我選擇ComboBox1 一樣會空白
為什麼?? 這個指令有問題 還是我有問題??
我需要用甚麼其他指令?



搜尋相關Tags的文章: [ ComboBox 清空選項 ] ,
本篇文章發表於2017-11-29 10:52
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
最有價值解答

小羊窒息
捐贈 VP 給 缺氧的羊:窒息 檢舉此回應
下拉式選單要做連動時,只能單向連動...

例如:
ComboBox1 變更選項後,一併將 ComboBox2重設(以便配合ComboBox1)
ComboBox2 的選項變更後 不可以 再回頭來變更 ComboBox1



本篇文章回覆於2017-11-29 11:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

培根
檢舉此回應
TO:小羊窒息
蛤~~ 這樣就滿麻煩的
看來我只能把 所有選項都擠在同一個ComboBox 來避免使用SelectedIndex 帶來的衝突
謝謝 小羊窒息

本篇文章回覆於2017-11-29 11:40
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

小羊窒息
捐贈 VP 給 缺氧的羊:窒息 檢舉此回應
一般來說,連動之間一定存在著父子(主從)關係

例如:郵遞區號(地址),先選縣市(ComboBox1),再選地區(ComboBox2)
選了縣市之後,地區的內容是動態產生的,而地區選完,不可能回頭去影響縣市

==========
一旦你選擇了 互相可以影響對方的連動方式,
那就變成要另外指定一個停止點...
(例如 ComboBox1 變動後,先設定一個暫存值,記錄ComboBox1變動中,然後才變更ComboBox2,
而在ComboBox2的ComboBox2_SelectedIndexChanged內就得做檢查,
倘若暫存值的確記錄了ComboBox1正在變動,那麼就不再執行ComboBox1.SelectedIndex = -1,

藉此來避免任一項ComboBox有變動之後,
ComboBox1與ComboBox2都被設定SelectedIndex = -1

==========

你可以考慮把實際問題貼出來。。。
為什麼 ComboBox2 變更後,還要再回頭去變更 ComboBox1

本篇文章回覆於2017-11-29 14:07
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

培根
檢舉此回應
我目前在寫VB.NET+Mysql
假如資料表是:
ID 名子
01 C#
Sterm
Javr
02 PHP
C++
ComboBox1,2主要是抓已經打好的字串
例如:
ComboBox1選擇ID 則DataGridView顯示出所有未打上ID的資料
ID 名子
sterm
javr
c++
而ComboBox2選擇名子 ComboBox2有加上TextBox來查詢我要的名子
如果 我在TextBox打上 C
ID 名子
01 C#
C++

其實有沒甚麼問題 只是看沒用的格子還有字 不太開心:)
我有找到如何把TextBox隱藏起來的方法
所以視窗看起來會更小 我覺得還不錯
謝謝 小羊窒息!

我想多問一個問題 如果需要的話我在發新的問題
這是我檢查視窗重複開起的程式碼

我無法執行這個程式 會出現錯誤
System.ObjectDisposedException: '無法存取已處置的物件。
ObjectDisposed_ObjectName_Name'

而我在想 一定是因為IsDate的關西 畢竟它是看時間
我找不到有甚麼屬性可以回傳False或True了
我有事過IsNothing 不能
我剛剛已經把它的出現小視窗方法看光了 沒找到 不知道還有沒有甚麼屬性可用 ?
本篇文章回覆於2017-11-29 16:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

小羊窒息
捐贈 VP 給 缺氧的羊:窒息 檢舉此回應
我沒看到你的畫面, 很難猜測你的狀況,

不過你的資料表跟資料...似乎怪怪的

我看不出資料的規則...


=============

至於視窗重複開啟...

你的form只要不是new form,應該都不會一而再再而三的彈出新視窗才對
(同一個form不管怎麼 show,也就只有那一個呀)


本篇文章回覆於2017-11-29 16:54
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

培根
檢舉此回應
我只是想要一個方便性
並沒有Form有多開的問題

不知道 小羊窒息 有沒有方法可以取代IsDate屬性?
我把 方法又看過了一遍 還是沒找到
本篇文章回覆於2017-11-29 19:34
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
回應

小羊窒息
捐贈 VP 給 缺氧的羊:窒息 檢舉此回應
你寫這一行【If (IsDate(created.Created) = False) Then】的目的是要檢查是否已開啟????


created.Created 本身就是回傳 boolean 值

也就是說, 直接寫成底下的寫法就行了, 沒必要加上IsDate
(這個函數就是在檢查是否為日期格式的, 我看不出來你想找什麼樣的函數來做什麼樣的檢查)

本篇文章回覆於2017-11-29 23:23
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

培根
檢舉此回應
我寫這個程式 最主要是當視窗縮小的時候 或 者是我忘記的還開著的時候 我可以利用這個程式把就視窗關掉再開啟
其實是一種懶惰拉:)
我想要找的屬性 就是可以段視窗是否開啟再來回傳False或True 類是這總

我跟大大的程式碼如果寫在Form的Button可行 是成功的! 沒有問題

但是寫在Module會出錯 因為按鈕有點多 所以我想寫在 模組裡面看起來比較好看

會出現錯誤 :
System.ObjectDisposedException: '無法存取已處置的物件。
ObjectDisposed_ObjectName_Name'

不知是哪裡有錯誤?? 當初我在實驗的時候 也是出現這個錯誤訊息
本篇文章回覆於2017-11-30 01:42
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
回應

小羊窒息
捐贈 VP 給 缺氧的羊:窒息 檢舉此回應

你直接 google【無法存取已處置的物件】
會發現很多的訊息...


有一種方式是 ShowDialog 的做法,(我以往也都是這樣子用的,強迫關閉彈出的視窗,每次要用時再開...)
http://www.blueshop.com.tw/board/FUM20050124191756KKC/BRD201101211251071BJ.html



還有一種方式是直接去控制視窗狀況(不是close,而是從最小化變更為一般size)
這個在屬性設定中可以找到,你可以試試...
關鍵字應該是【FormWindowState.Minimized】
https://msdn.microsoft.com/zh-tw/library/system.windows.forms.form.windowstate(v=vs.110).aspx

本篇文章回覆於2017-11-30 12:22
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

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