2013-08-06 135 views
-2

我有一個WPF項目,其中我有一個Resource Dictionary存儲我的樣式。在這本詞典中,我有一個ListBoxItem Template,看起來像這樣。在每個列表框中添加名稱屬性項目

<DataTemplate x:Key="GenreStyle"> 
    <Grid Width="150" Height="150" Background="Transparent"> 
     <Image x:Name="GenreImage" Tag="{Binding Genre}" RenderOptions.BitmapScalingMode="HighQuality" Source="{Binding GenreSource}" Width="140" Height="140" MouseEnter="GenreImage_MouseEnter" MouseLeave="GenreImage_MouseLeave" MouseLeftButtonDown="GenreImage_MouseLeftButtonDown" MouseLeftButtonUp="GenreImage_MouseLeftButtonUp"/> 
    </Grid> 
</DataTemplate> 

現在我想要做的是,閱讀圖片Tag當我點擊每個項目。 現在在做什麼是這樣的:

private void StationsListLB_PreviewMouseLeftButtonUp(object sender, System.Windows.Input.MouseButtonEventArgs e) 
{ 
    var item = ItemsControl.ContainerFromElement(StationsListLB, e.OriginalSource as DependencyObject) as ListBoxItem; 
    if (item != null) 
    { 
     MessageBox.Show(??????); 
    } 
} 
+0

沒有評論解釋downvotes? –

+0

沒有。根本沒有。 – oimitro

+0

也許是因爲沒有問題? – Pacane

回答

0

好吧,算了一下。我只需要捕獲System.Windows.Input.MouseButtonEventArgs。 然後很簡單:

private void StationsListLB_PreviewMouseLeftButtonUp(object sender, System.Windows.Input.MouseButtonEventArgs e) 
{ 
    var item = ItemsControl.ContainerFromElement(StationsListLB, e.OriginalSource as DependencyObject) as ListBoxItem; 
    if (item != null) 
    { 
     var opa = e.OriginalSource as System.Windows.Controls.Image; 
     MessageBox.Show(opa.Tag.ToString()); 
    } 
} 
相關問題