2013-08-23 32 views
1

我有一個初始不透明度爲0(零)的groupbox,即:hidden。Groupbox對編碼的不透明度和可見性指令沒有響應

當單擊一個按鈕時,動畫開始關閉,通過1個關鍵幀在2秒內將不透明度設置爲0 - > 100。所有這些工作。

groupbox實際上包含一個表單,一旦提交,我想隱藏groupbox。

使用代碼:

CampaignName.Text = ""; //works 
CampaignFromEmail.Text = ""; //works 
TemplatesCombo.ItemsSource = null; //works 
TemplatesCombo.Items.Clear(); //works 
GBCreateCampaign.Opacity = 0; // no effect 
GBCreateCampaign.Visibility = Visibility.Hidden; //no effect 

這在我看來,應該工作。確定它不會有淡出效果,但重點是組合框(GBCreateCampaign)在屏幕上仍然非常明顯,完全不透明。

任何想法?

回答

3

在WPF的動畫保存在默認情況下 '走出去'。因此,當您嘗試更改代碼中的屬性(或任何其他方式)時,它將被動畫取消或取消。

你需要:

  • 設置動畫的FillBehavior物業停止 - 所以它停止設置屬性爲動畫的To值動畫完成後。

  • 刪除整個故事板 - 請注意,在腳本的所有動畫都將被刪除

  • 從個人財產中刪除動畫。

Source: MSDN

+0

非常有趣。所以這個「持續進行」消耗資源和記憶的船載? –

+0

這取決於UI中動畫的數量。單個動畫不應該那麼昂貴,特別是當值不再變化時。 –

相關問題