[問題] 如何在class中取得項目的button.imagine?

看板C_Sharp (C#)作者 (木日一)時間7年前 (2018/03/15 13:50), 7年前編輯推噓4(409)
留言13則, 5人參與, 7年前最新討論串1/1
最近寫一支專案大概有16X支子程式 而現在要在所有子程式的button裡面加上事件 我想一次做掉 所以在class裡面寫 總共有大概七種類型的button 每種類型的button要做的事情不一樣 所以我要在class裡面判斷 而各個種類的button只有圖片是用一樣的(一個種類用一個) 名字每個人卻取不統一 現在我要在class裡面去讀button.imagine,但找不到合適的方法 不知道有沒有甚麼做法可以做到這點? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.222.53.85 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1521093008.A.23B.html

03/15 14:48, 7年前 , 1F
物件導向嗎?
03/15 14:48, 1F

03/15 15:37, 7年前 , 2F
引用的圖片來源給識別,然後class寫個判斷讀進來的是哪個
03/15 15:37, 2F

03/15 15:37, 7年前 , 3F
再委派給他應該就可以了吧
03/15 15:37, 3F

03/15 15:38, 7年前 , 4F
button 的img屬性應該會有pic的名稱
03/15 15:38, 4F

03/15 16:26, 7年前 , 5F
原本是想從CLASS直接拉BUTTON圖片名稱,現在改從BUTTON
03/15 16:26, 5F

03/15 16:26, 7年前 , 6F
傳圖片名稱當參數
03/15 16:26, 6F
不過現在還是拉不出圖片名稱 我在BUTTON下面加入 var button = sender as Button; 然後 button.image去找,找不到傳出圖片名稱的方法 ※ 編輯: forewero (61.222.53.85), 03/15/2018 16:51:09

03/15 17:01, 7年前 , 7F
((Button)sender).image
03/15 17:01, 7F
我有試過不過他會出現((Button)sender).Image = '((Button)sender).Image' 擲回 'System.InvalidCastException' 類型的例外狀況 ※ 編輯: forewero (61.222.53.85), 03/15/2018 17:15:09

03/16 08:02, 7年前 , 8F
為什麼是在事件裡用Image去分種類,而不是一開始就連到不
03/16 08:02, 8F

03/16 08:02, 7年前 , 9F
同種類的事件呢
03/16 08:02, 9F

03/16 16:31, 7年前 , 10F
你只是要分辨是哪一個button被按下,應該是判斷
03/16 16:31, 10F

03/16 16:31, 7年前 , 11F
(sender as Button).Name
03/16 16:31, 11F

03/16 16:49, 7年前 , 12F
快速找出button用哪個image,你可以去看form1.designer.cs
03/16 16:49, 12F

03/16 16:50, 7年前 , 13F
然後把同一類型button以命名規則取名
03/16 16:50, 13F
謝謝各位的幫助,最後有找出BUTTON.IMAGE的屬性 不過比較可惜是最後也沒照這個方式做 因為BUTTON.IMAGE我們是在LOAD的階段動態加上去的 BUTTON.IMAGE會抓到的是動態加上去以前的圖片名稱 初學c#,有些名詞可能講得不是很清楚,還請各位前輩包含 也謝謝各位的回覆 ※ 編輯: forewero (111.185.68.213), 03/18/2018 17:27:06
文章代碼(AID): #1QgWcG8x (C_Sharp)
文章代碼(AID): #1QgWcG8x (C_Sharp)