2012-01-06 72 views
1

它是我在C#中開發應用程序的,我在那裏使用了三個選項卡控件。問題是,當我切換到另一個選項卡時,我無法更改應用程序的實際窗口大小,因爲我不需要這樣大的窗口,當我更改回到上一個窗口時,它應該返回到以前的大小。如何在C中每次更改窗口大小#

+2

我個人認爲,不斷變化的窗口大小將不會提供一個非常愉快的用戶體驗,如果他們最大化(除非你不讓他們),那麼他們將會得到一個全屏窗口。我建議將窗口大小設置爲您需要的最大值,並且只有標籤不會隨窗口內容一直填滿整個窗口 – Coops 2012-01-06 10:09:43

+0

請勿使用選項卡控件。使用面板並通過按鈕顯示/隱藏它們。您只需設置Form的autosize和AutoSizeMode屬性。 – adatapost 2012-01-06 10:21:25

+0

這是WinForms還是WPF? – 2012-01-07 01:12:31

回答

2

在我看來,當所選標籤更改時,不應更改窗口大小。設計你的窗口的方式,你不需要調整它的大小。

重新設計您的標籤,使它們總是消耗相同的尺寸,因此您無需調整窗口大小。

作爲用戶,我不希望窗口大小發生變化,因爲它可能會給用戶帶來不好的體驗。

+0

我明白了,但它的一個項目,我被要求去做。所以,你能幫忙嗎? – shihab13rocks 2012-01-06 10:14:18

+0

試着重新設計你的標籤,使得消費無論如何都是相同的尺寸。所以你不需要調整窗口的大小。這對你有幫助嗎? – rekire 2012-01-06 10:17:07

+0

我試過,但你看到一個標籤的內容佔用了太多的空間,而其他的則沒有,我必須保持那些方式。 – shihab13rocks 2012-01-06 10:55:21

1

我想你想的:

private void tabControl1_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     if (tabControl1.SelectedTab.Text == "tabPage1") 
     { 
     // rezise tabcontrol 
     } 
    } 

雖然我不認爲它人性化的

+0

你試過了嗎?我沒有得到任何結果。 – shihab13rocks 2012-01-06 11:18:53

+0

@ shihab13rocks看我的編輯,現在使用selectedIndexChanged,這個工程(對我來說) – Moonlight 2012-01-06 11:28:46