2014-08-29 80 views
0

我在嘗試使用工具提示時遇到困難。 我正在嘗試將不同文本的工具提示添加到tabcontrol中的每個動態創建的選項卡。 重要的是要注意,該選項卡是從包含tabcontrol所在的停靠窗體的窗體創建的。 這是一個帶停靠區域的主窗體,其中包含一個結果窗體,其中包含 - 初始空 - tabcontrol。 當您啓動應用程序時,此結果表單不存在,只要用戶按下主窗體的某些部分,每個窗體都會在結果窗體tabcontrol中作爲新選項卡創建,我也會動態創建它。將工具提示添加到動態創建的標籤頁

我這是怎麼生成的標籤:

 generateResultForm(); 

     TabPage newtp = new TabPage("Nuevo paciente") 
     _result.TabControl.TabPages.Add(newtp); 

     newtp.Name = setTabName("np"); 

現在,我已經試過把一個提示的結果形式,然後試圖通過添加以下類似_result.ResultsTooltip.SetToolTip(newtp, "Creación de un nuevo paciente.");,這沒」首先生成提示工作。然後,因爲一旦選項卡被創建,它就會被選中,我試圖通過類似於WorkareaTooltip.SetToolTip(tabControl.SelectedTab, "Cosas");在tabcontrol中的selectedindexchange事件中將它添加到結果類中。 我不認爲這會是一個很好的解決方案,但我不知道還有什麼可以嘗試的。

當然,tabcontrol的ShowToolTips屬性設置爲true。

如果任何人都可以幫助我,那會很棒。

感謝您的閱讀,和對不起,如果有任何的語言錯誤:)

// EDITED

這是我實際使用(和不工作)的代碼

TabPage newtp = new TabPage("Nuevo paciente"); 
_workareaform.TabControl.TabPages.Add(newtp); 
newtp.Name = "np"; 
var tooltip = new ToolTip(); 
tooltip.SetToolTip(newtp, "Creación de un nuevo paciente."); 

現在,它不工作,可能是因爲整個配置。 要清楚的是,此選項卡位於TabControl中,該Form中的Form停靠在另一個Form中的dockContainer中。 這是一個圖像,如果它。

http://i.imgur.com/fVz6e06.png

正如你所看到的,沒有任何提示都沒有。

回答

0

如果你與你需要引用其他形式的TabControl

在此示例中另一種形式的工作,我從我的Form2創建一個Form1實例(在它TabControl),然後添加頁面和工具提示。

private void Form2_Load(object sender, EventArgs e) 
{ 
    //instantiate another form 
    var f1 = new Form1(); 

    //find tabcontrol on new form 
    var tc = (TabControl) f1.Controls["tabControl1"]; 

    //create page 
    TabPage newtp = new TabPage("Nuevo paciente"); 
    newtp.Name = "Paciente1"; 
    tc.TabPages.Add(newtp); 

    //add tooltip 
    var tt1 = new ToolTip(); 
    tt1.SetToolTip(newtp, "paciente 1 tooltip"); 


    //show other form 
    f1.Show(); 
} 

enter image description here

+0

是啊...那不工作^^你我認爲它是因爲我從另一個窗體創建標籤,而不是包含它的標籤。 – Iskalla 2014-08-29 11:20:21

+0

仍然不工作-_- 我只是不知道還有什麼可以嘗試:/ – Iskalla 2014-08-29 11:38:57

+0

@Iskalla現在檢查我的編輯,沒有理由不能在另一個表單上創建工具提示。你做錯事 – Vland 2014-08-29 11:42:32

0

你有沒有嘗試過,如下圖所示設置ToolTipText財產?它爲我工作。

_result.TabControl.ShowToolTips = true; 
TabPage newtp = new TabPage("Nuevo paciente"); 
_result.TabControl.TabPages.Add(newtp); 
newtp.ToolTipText = "this is tooltip"; 
+0

是第一個我試過了,不行:/ – Iskalla 2014-08-29 11:34:59

相關問題