2016-11-08 31 views
0

wpfとListViewに関する質問があります。私は私が手に私はこのコード複数行と1行選択のリストビューとグリッドビューwpf

public partial class ListViewGridViewSample : Window 
{ 
    public ListViewGridViewSample() 
    { 
     InitializeComponent(); 
     List<User> items = new List<User>(); 
     items.Add(new User() { Name = "molo", Telefon= 0909090, Adress= "Street" }); 
     items.Add(new User() { Name = "moloi", Telefon="99999", Adress= "street2" }); 
    } 
} 

を持っており、私の質問は、私は、このプログラムコードを実行すると、ある私のWindows.xaml

<Grid> 
    <ListView Margin="10" Name="lvUsers"> 
     <ListView.View> 
      <GridView> 
       <GridViewColumn Header="Names" Width="140" DisplayMemberBinding="{Binding Name}" /> 
       <GridViewColumn Header="Telefon" Width="60" DisplayMemberBinding="{Binding Age}" /> 
       <GridViewColumn Header="Adress" Width="180" DisplayMemberBinding="{Binding Mail}" /> 
      </GridView> 
     </ListView.View> 
    </ListView> 

そして、私のWindows.xaml.cs中で、このプログラムコードを持っていますウィンドウはListViewです。そして今、私は1つまたは複数の行で選択をしたいと思います。たぶん私は行番号2を選択したいと思うかもしれませんが、これはユーザーmoloiです。この行を選択した後、たとえばメッセージボックスに渡したいと思います。どうすればそれを処理できますか?

誰かが

はすべて

+0

* 'ListView' *とのウィンドウを取得は、' ListView'にデータが取り込まれていますか?私はあなたのコードのどこにでも 'ItemsSource'を設定しているとは思わないので! –

+0

確かに、コードの最後に* lvUsers.ItemsSource = items; * – flowers1234

+0

OK。だからあなたが望むものを達成するためにこれまでに何を試みましたか?現在書かれているように、*可能な答えが多すぎるか、この形式には長すぎると良い答えがあるでしょう。回答セットを絞り込むか、いくつかの段落で答えることができる問題を特定するために詳細を追加してください。* –

答えて

0

のListViewがSelectionMode="Extended"と呼ばれる性質を持っているあなたに感謝plsは私に簡単な例を与えることができます。これにより、希望する選択モードを設定することができます。選択動作を行うには、ListViewでも利用可能なSelectionChangedイベントを使用できます。これらの2つのことは、上記のすべてを達成するのに役立ちます。

<ListView Name="lvUsers" 
      ItemsSource="{Binding}" 
      Margin="10" 
      SelectionMode="Extended" 
      SelectionChanged="lvUsers_SelectionChanged"> 
    <ListView.View> 

そして、イベントの背後にあるコード:あなたの後

private void lvUsers_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
    //e.AddedItems - these are the items that have currently been selected 
} 
関連する問題