0
我創建了一個名爲ucTextBox
的usercontrol文本框,其中包含一個標籤,一個文本框和兩個按鈕。我把它放在我的表格中。自定義usercontrol上的MouseHover事件#
現在我想在我的表格中的每個ucTextBox
,TextBox
和MaskedTextBox
上附加一個MouseHover事件。
我這樣做:
public void AttachHoverEvent(Control CTrl)
{
foreach (Control c in CTrl.Controls)
{
if (c is TextBox || c is MaskedTextBox)
{
c.MouseHover += new EventHandler(afficheDictionnaireChamp);
c.MouseLeave += new EventHandler(desafficheDictionnaireChamp);
continue;
}
if (c is ucTextBox)
{
c.MouseHover += new EventHandler(afficheDictionnaireChamp);
c.MouseLeave += new EventHandler(desafficheDictionnaireChamp);
continue;
}
if (c.HasChildren)
{
AttachHoverEvent(c);
}
}
}
注:我把ucTextBox
在其他條件把一個斷點,條件爲真。
我的代碼可以正確處理TextBox
和MaskedTextBox
但不要對我 ucTextBox
(沒有發生)工作。
我嘗試在我的ucTextBox
類補充一點:
private void txbValeur_MouseHover(object sender, EventArgs e)
{
if (this.MouseHover != null)
this.MouseHover(this, e);
}
這是我的目標事件功能:
public void afficheDictionnaireChamp(object sender, EventArgs e)
{
Dictionnaire dico = new Dictionnaire();
Control snd = (Control)sender;
string table = dico.getNomTable(this.Name, snd.Name);
string champ = dico.getNomChamp(this.Name, snd.Name);
if (table != "" && champ != "")
Globals.FormMain.tslTable.Text = table + " - " + champ;
else
Globals.FormMain.tslTable.Text = "";
}
public void desafficheDictionnaireChamp(object sender, EventArgs e)
{
Globals.FormMain.tslTable.Text = "";
}
如果有人有一個想法是哪裏的問題可以從?
在此先感謝!
托馬斯
不要改變任何東西 –