2015-11-14 47 views
1

我正在尋找一個純粹XAML解決以下問題:WPF/XAML:更改的TabControl的SelectedItem按下按鈕

我有一個按鈕和選項卡控件。當我按BUtton時,選項卡控件應該顯示一個特定的選項卡(所以按鈕應該更改Tabcontrol的SelectedIndex)。我知道如何用代碼來解決這個問題,但那不是我想要的。

是否可以用觸發器做到這一點?

+0

我可以知道你做了什麼到目前爲止解決這個問題? – tgpdyk

+0

嘗試與eventtriggers routedevent「BUtton.Click」和故事板與目標= {綁定源= {x:參考tabcontrolname}} TargetProperty = SelectedIndex「To =」2「。does not work,因爲調試器說沒有對象實例:/ – xb1xbv1

+0

@ xb1xbv1,編輯你的問題,添加你的代碼摘錄,這將是一個不錯的問題 –

回答

0

它進行了測試,它的工作原理

就拿不使用的SelectedIndex是太大的照顧。從0開始。

<Window.Resources> 
    <Storyboard x:Key="OnClick1"> 
     <Int32AnimationUsingKeyFrames 
       Storyboard.TargetProperty="(Selector.SelectedIndex)" 
       Storyboard.TargetName="tabControl"> 
      <EasingInt32KeyFrame KeyTime="0" Value="1"/> 
     </Int32AnimationUsingKeyFrames> 
    </Storyboard> 
</Window.Resources> 
<Window.Triggers> 
    <EventTrigger RoutedEvent="FrameworkElement.Loaded"/> 
    <EventTrigger RoutedEvent="ButtonBase.Click" SourceName="button"> 
     <BeginStoryboard Storyboard="{StaticResource OnClick1}"/> 
    </EventTrigger> 
</Window.Triggers> 

如果必要的話,我可以發送完整的代碼,只是問在評論

這裏是鏈接到完整的代碼如果需要的話:http://1drv.ms/1SuA8pn 問候

+0

謝謝,看起來不錯,但我得到一個xamlparseexception,只要我添加window.triggers部分,也許完整的代碼會很大 – xb1xbv1

+0

剛剛編輯我的帖子,添加鏈接到完整的源代碼。請告訴我好消息 –