2017-04-10 60 views
1
<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> 

上面的代码是我的XAML代码单击文本。我想要得到的ListView,我对

接下来,代码隐藏click事件


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

我不希望看到的控件名称。

我想看到的是“案件已结束”。成为。

如何获得我点击的listview单元格中的文本?

回答

1

其中文本“案件已经结束”是从何而来,但你可以尝试将Content转换为Task并访问其任何属性的目前还不清楚:

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

另一种方式,我在这里看到的是使用SelectedItem属性。 –

+0

@NareshRavlani我想看另一种方式。我是一个充满激情的新手开发者。不好意思,你能以另一种方式告诉我吗? –

+0

@ mm8你真的很擅长发展。你怎么能像你一样发展良好? –