簡體   English   中英

如何為TableLayoutPanel中最后添加的ctrl設置焦點

[英]how to set focus for last added ctrl in TableLayoutPanel

我正在使用TableLayoutPanel顯示圖像..這里我會動態地將很多圖像添加到TableLayoutPanel ..這里我需要關注最后添加的圖像....我不知道該怎么做,請幫幫我....

您可以通過Control.Select()屬性激活最后一個控件。

我假設您正在使用面板控件來顯示圖像,並且您當前的代碼類似於以下內容:

在您的OnLoad表單中...

Panel panel=null;
foreach(Image i in images)
{
    panel =new Panel();
    panel.BackgroundImage=i;
    panel.TabStop=true;
    tableLayoutPanel1.Controls.Add(panel);
}

panel.Focus();
  • 使用該代碼,焦點永遠不會正確設置!

為什么?

似乎需要激活表格才能設置焦點。

進行一些細微調整后,焦點將正確設置

  • 首先在表單級別跟蹤最后一個面板。

  • 第二個重寫窗體OnActivated事件並在其中調用panel.Focus()。 在OnLoad覆蓋或load事件內部進行構造和添加仍然是安全的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM