2017-04-10 2 views
1
geklickt
<Window.Resources> 
    <Style x:Key="itemstyle" TargetType="{x:Type ListViewItem}"> 
     <EventSetter Event="PreviewMouseLeftButtonDown" Handler="ListViewItem_PreviewMouseLeftButtonDown" /> 
    </Style> 
</Window.Resources> 
<Grid> 
    <TabControl x:Name="tabControl" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> 
     <TabItem Header="업무공지"> 
      <Grid Background="#FFE5E5E5"> 
       <Grid.RowDefinitions> 
        <RowDefinition Height="Auto" /> 
        <RowDefinition Height="*" /> 
        <RowDefinition Height="Auto" /> 
       </Grid.RowDefinitions> 

       <ListView Name="listView" 
           Grid.Row="1" 
           ItemContainerStyle="{StaticResource itemstyle}" 
           Margin="4" 
           Padding="2" 

           SelectionMode="Single"> 
        <ListView.View> 
         <GridView ColumnHeaderContainerStyle="{StaticResource myHeaderStyle}"> 
          <GridViewColumn > 
           <GridViewColumn.CellTemplate> 
            <DataTemplate > 
             <CheckBox IsChecked="{Binding Finished}" HorizontalAlignment="Center" /> 
            </DataTemplate> 
           </GridViewColumn.CellTemplate> 
          </GridViewColumn> 
          <GridViewColumn DisplayMemberBinding="{Binding Description}" Width="340" /> 
         </GridView> 
        </ListView.View> 
       </ListView> 
      </Grid> 

Der obige Code ist mein XAML-Code.Ich möchte den Text der Listenansicht erhalten, die ich auf

Als nächstes Code-Behind-Click-Ereignis


private void ListViewItem_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e) 
{ 
    var item = sender as ListViewItem; 

    if (item != null && item.IsSelected) 
    { 
     MessageBox.Show(item.Content.ToString()); 
    } 
} 

enter image description here

Ich will nicht die Kontrolle Namen sehen.

Was ich sehen möchte, ist "Der Fall ist beendet." sein.

Wie kann ich den Text in der Listview-Zelle erhalten, auf die ich geklickt habe?

Antwort

1

Es ist unklar, wo der Text „Der Fall ist beendet“ soll aus kommen, aber man konnte die Content auf einen Task und Zugang zu seiner Eigenschaften zu werfen versuchen:

private void ListViewItem_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e) 
{ 
    var item = sender as ListViewItem; 
    if (item != null && item.IsSelected) 
    { 
     var task = item.Content as Copsys.Comm.Messenger.Task; 
     if (task != null) 
     { 
      MessageBox.Show(task.Description); 
     } 
    } 
} 
+0

Eine andere Möglichkeit, die ich hier zu sehen Verwenden Sie die SelectedItem-Eigenschaft. –

+0

@NareshRavlani Ich möchte einen anderen Weg sehen. Ich bin ein unerfahrener Entwickler voller Leidenschaft. Entschuldigung, kannst du mir einen anderen Weg zeigen? –

+0

@ mm8 Sie sind wirklich gut in der Entwicklung. Wie kannst du dich so gut entwickeln wie du? –

Verwandte Themen