2011-07-03 17 views

cevap

5

Biraz önce yazdım, tam olarak normal mesaj kutusu sınıfı gibi çalışıyor.

CustomMessageBox (Sınıf): http://pastebin.com/m8evBmZi

MessageForm (Form): http://pastebin.com/jawHZDzY

MessageForm (Tasarımcı Kod): http://pastebin.com/CRXjeUFN

+0

hmmm ... öyle mi? :) Sadece bir yere "Yeni görüntü ekle" ve voila yapacağım diye düşünüyordum, ama bu gerçek bir iş. :) Şimdi bazı özel şeyler yapma şansım var, kavramak için bir süre kodunuzu okudum ve anladım of ... Teşekkürler –

+1

Sorun değil, cevap olarak işaretlemeyi unutmayın. Kodumu kullanmaktan çekinmeyin, kopya korumalı değil. :) –

3

MessageBox'un bu davranışını geçersiz kılabilirsiniz. Çözüm, bazı özel ileti kutularını kullanın, this'u kontrol edin veya kendi MessageBoxForm'nu uygulayın ve özel ayarlarınızı ekleyin, this'u işaretleyin.

1

Sen özel diyaloglar göstermeye yardımcı olacaktır, hangi Microsoft'tan Task Dialog Indirect API kullanabilirsiniz .

+0

Belki de Rube Goldberg olsaydınız, belki de sadece kendi formumu oluşturabilirdim ... –

+0

@Ed S Neden bir tekerlek icat etmeliyiz, eğer bir API varsa, bu hakkı kullanmak yerine, onu kullanmak kolaydır yeni bir tane :) – Anuraj

+1

Burada PInvoke kullanmayı düşünmüyorum garantilidir. Bu tekerleği yeniden icat etmiyor, bu daha çok ... kağıt klipsi yeniden keşfetmeye benziyor. Basit bir görev. –

0

Doğrudan MessageBox'ın bir simgesini değiştiremezsiniz, bu yüzden ben de googledim ve bunun için bir çözüm buldum. Pencere kancasını kullanarak mesaj kutusunun bir simgesini değiştirebiliriz.

duyun, MSDN Magazine bağlantılar

Link-2

Link-1 ve ayrıca bu bağlantıyı örnek uygulamasını temin

.

Umarım bu size yardımcı olur!