2011-09-07 49 views
14

我有一個資源字典:如何事件處理程序添加到控制的DataTemplate在資源字典

<ResourceDictionary 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
x:Class="wpfUI2.MainWindowEvents"> 


<DataTemplate 
    x:Key="WorkspacesTemplate"> 
    <TabControl 
     x:Name="Tab1" 
     IsSynchronizedWithCurrentItem="True" 
     ItemsSource="{Binding}" 
     ItemTemplate="{StaticResource ClosableTabItemTemplate}" 
     Margin="4"/> 
</DataTemplate> 
... 

而且我想將事件處理程序添加到TabControl。 MainWindowEvents是在一個文件中定義的任何其他類的類:

Namespace wpfUI2 
    Public Class MainWindowEvents 

    End Class 
End Namespace 

當我去添加事件處理程序像

<TabControl 
     x:Name="Tab1" 
     IsSynchronizedWithCurrentItem="True" 
     ItemsSource="{Binding}" 
     ItemTemplate="{StaticResource ClosableTabItemTemplate}" 
     Margin="4" 
     SelectionChanged="" 
    /> 

,並嘗試在「」之間點擊創建我得到事件一個錯誤說明由x:Class屬性指定的類必須是該文件中的第一個。好吧!奇怪的是,當我手動創建的處理程序:

Namespace wpfUI2 
    Public Class MainWindowEvents 
     Public Sub Tab1_SelectionChanged(sender As System.Object, e As System.Windows.Controls.SelectionChangedEventArgs) 

     End Sub 
    End Class 
End Namespace 

一切編譯好的,但我得到window.show

什麼我做錯了運行時異常?

回答

相關問題