Form Hakkında

Katılım
5 Şubat 2010
Mesajlar
193
Excel Vers. ve Dili
EXCEL/2016
Altın Üyelik Bitiş Tarihi
09-08-2025
Hayırlı günler değerli arkadaşlar. Sizlerin destekleriyle hazırladığım form üzerine listbox ve combobox eklediğim zaman "denetim görünmez olduğundan etkinleştirilmediğinden ve odaklanmayı kabul etmeyen bir türde olduğundan" bu tarz bir hata alıyorum. Bunun sebebi ve çözümü hakkında yardımcı olabilir misiniz?
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
946
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Kontrol Henüz Form Üzerinde Gösterilmemiş (Visible = false)
Eğer ListBox, ComboBox gibi bir kontrol henüz ekranda görünür değilse (örneğin Visible = false ise) ve siz bu kontrol üzerinde odak (Focus()) vermeye çalışırsanız, bu hatayı alırsınız.

if (comboBox1.Visible && comboBox1.Enabled)
{
comboBox1.Focus();
}

Ya da önce görünür hale getirin:
comboBox1.Visible = true;
comboBox1.Focus();
**************************************************************
Form henüz ekranda gösterilmeden (InitializeComponent çağrısından hemen sonra veya Load eventinden önce) kontrole erişmeye çalışmak bu hataya neden olabilir.İşlemlerinizi Form_Load olayı içinde yapın veya Shown olayında:

private void Form1_Shown(object sender, EventArgs e)
{
comboBox1.Focus();
}
***************************************************************
bir kontrol devre dışıysa (Enabled = false), o kontrole odak verilemez.
comboBox1.Enabled = true;
comboBox1.Focus();
*****************************************************************
Bazı kontrollerde TabStop = false ise, odaklanma işlemlerinde sorun çıkarabilir.
comboBox1.TabStop = true;
*****************************************************************
Eğer ListBox veya ComboBox bir Panel, GroupBox ya da başka bir container içinde yer alıyorsa ve bu container görünmezse, içindeki kontroller de etkilenir.Üst konteynerin de Visible = true olduğundan emin olun:

panel1.Visible = true;
comboBox1.Visible = true;
comboBox1.Focus();
*****************************************************************
yukarıdaki kontrol listesinden en yaygın olanlar:

Kontrol Visible = false mi?
Enabled = false mi?
Form_Load öncesinde mi işlem yapılıyor?
Üstteki container'lar görünür mü?
UI thread dışında mı erişiliyor?

Bu durumları kontrol ederek problemi çözebilirsiniz.
 
Katılım
5 Şubat 2010
Mesajlar
193
Excel Vers. ve Dili
EXCEL/2016
Altın Üyelik Bitiş Tarihi
09-08-2025
Kontrol Henüz Form Üzerinde Gösterilmemiş (Visible = false)
Eğer ListBox, ComboBox gibi bir kontrol henüz ekranda görünür değilse (örneğin Visible = false ise) ve siz bu kontrol üzerinde odak (Focus()) vermeye çalışırsanız, bu hatayı alırsınız.

if (comboBox1.Visible && comboBox1.Enabled)
{
comboBox1.Focus();
}

Ya da önce görünür hale getirin:
comboBox1.Visible = true;
comboBox1.Focus();
**************************************************************
Form henüz ekranda gösterilmeden (InitializeComponent çağrısından hemen sonra veya Load eventinden önce) kontrole erişmeye çalışmak bu hataya neden olabilir.İşlemlerinizi Form_Load olayı içinde yapın veya Shown olayında:

private void Form1_Shown(object sender, EventArgs e)
{
comboBox1.Focus();
}
***************************************************************
bir kontrol devre dışıysa (Enabled = false), o kontrole odak verilemez.
comboBox1.Enabled = true;
comboBox1.Focus();
*****************************************************************
Bazı kontrollerde TabStop = false ise, odaklanma işlemlerinde sorun çıkarabilir.
comboBox1.TabStop = true;
*****************************************************************
Eğer ListBox veya ComboBox bir Panel, GroupBox ya da başka bir container içinde yer alıyorsa ve bu container görünmezse, içindeki kontroller de etkilenir.Üst konteynerin de Visible = true olduğundan emin olun:

panel1.Visible = true;
comboBox1.Visible = true;
comboBox1.Focus();
*****************************************************************
yukarıdaki kontrol listesinden en yaygın olanlar:

Kontrol Visible = false mi?
Enabled = false mi?
Form_Load öncesinde mi işlem yapılıyor?
Üstteki container'lar görünür mü?
UI thread dışında mı erişiliyor?

Bu durumları kontrol ederek problemi çözebilirsiniz.
Sayın Muhasebeci Üstadım dediğiniz şekilde yaptım hatta farklı bir userform açarak yeni combo ve listbox ekleyerek denedim yine aynı şekilde hata aldım.
 
Üst