iT邦幫忙

0

winform程式如何判斷某功能按鈕可使用

  • 分享至 

  • xImage

請問各位大大

小弟從軟體新增一筆資料,該軟體的某項功能就可以點選使用。從MSSQL直接新增一筆資料,從軟體上可以查詢、修改、刪除這筆資料,但唯獨那個某項功能就反灰無法點選。
確認從MSSQL新增的那筆資料所有欄位都有寫入,不知這種限制是如何作到的?有大大可以說明嗎?謝謝

猜測是:系統新增這筆資料的時候,在另一個table也連動新增了資料,而「某項功能」是由另一個table是否有資料來判斷是否能用。而你自己在資料庫新增的,當然另一個table就沒有關連的資料囉。
Zed_Yang iT邦新手 3 級 ‧ 2019-04-12 14:59:41 檢舉
以VS2013WINDOWFORM為例
可以判斷 查詢資料庫
若無資料
則某功能的元件.Enabled =false

若是不先點選任何功能
開啟軟體就要知道功能是否要反灰無法點選
就直接在Form_Load直接先主動開啟連線 查詢資料庫
sam1911 iT邦新手 5 級 ‧ 2019-04-12 15:15:32 檢舉
leonliu777大:這套軟體的table總共20個左右,而我新增的資料相關table只有三個,所以目前看起來並不是用table是否有資料或某個欄位資料來判斷。謝謝

kk大:你說的方式可以套用在套裝軟體嗎?謝謝
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

0
海綿寶寶
iT邦大神 1 級 ‧ 2019-04-12 18:08:54
從軟體新增一筆資料,該軟體的某項功能就可以點選使用。
從MSSQL直接新增一筆資料,從軟體上可以查詢、修改、刪除這筆資料,但唯獨那個某項功能就反灰無法點選。

由這兩點來看

那個「某項功能」一直是 Disabled 的

只有在「新增一筆資料」的動作(例:按下新增按鈕)裡
Enable 那個「某項功能」
只要離開那個畫面/離開程式
那個「某項功能」就會被 Disabled

sam1911 iT邦新手 5 級 ‧ 2019-04-15 09:29:28 檢舉

大大,不好意思,我沒說清楚

那個功能在新增資料的畫面是看不到的,它是在查詢資料的畫面上

在新增一筆資料之後,某項功能是
1.查詢那筆新增的資料時可以使用
2.所有資料都可以使用
如果只有第1種情形
判斷可能是「新增資料符合某種條件」

另外,方便說一下那個某項功能的「功能名稱」
以免繼續瞎猜嗎?

sam1911 iT邦新手 5 級 ‧ 2019-04-15 14:44:04 檢舉

海綿大大
那只是列印功能而已,
透過套裝軟體新增的資料都沒問題,
手動從DB直接新增的都沒辦法點選列印。
手動新增的資料也刻意與從軟體新增的資料一致,
還是沒用。
謝謝

0
thwu
iT邦新手 4 級 ‧ 2019-04-15 09:51:18

反問一下
有嘗試過建立測試環境或還原資料庫嗎? 是不是完成後,該軟體的內容就全部復原(包含那個某項功能反灰的狀況)

如果是的話,那應該是將所有的資料都是存在資料庫中。
那我比較傾向再查找一下是否有漏的 Table 沒有寫入,請問有試過用 SQL Server Profiler 檢查過嗎?

sam1911 iT邦新手 5 級 ‧ 2019-04-15 14:46:20 檢舉

thwu大

有試過用Server Profiler檢查過,沒有漏寫的table跟資料,
倒是還沒試過測試環境或還原資料庫的作法,
我會來試試,謝謝

我要發表回答

立即登入回答