2012-02-22 5 views
0

から私のXAMLファイルを現在選択された行を取得します:のIList

<Grid> 
     <DataGrid x:Name="LibraryView" ItemsSource="{Binding Path=Elements[track]}" SelectionChanged="LoadAlbumDetails" SelectionMode="Single"> 
      <DataGrid.Columns> 
       <DataGridTextColumn Header="Artist" Binding="{Binding Path=Element[artist_name].Value}" /> 
       <DataGridTextColumn Header="Album" Binding="{Binding Path=Element[album_name].Value}"/> 
       <DataGridTextColumn Header="Length" Binding="{Binding Path=Element[duration].Value}"/> 
       <DataGridTextColumn Header="Price" Binding="{Binding Path=Element[price].Value}"/> 
      </DataGrid.Columns> 
     </DataGrid> 
    </Grid> 

私のXMLファイル:私のxaml.csで

<?xml version="1.0" encoding="utf-8" ?> 
<albums> 
    <track> 
     <id>211</id> 
     <name>If you say something..</name> 
     <duration>156</duration> 
     <artist_id>13</artist_id> 
     <artist_name>Richard Keating</artist_name> 
     <album_id>29</album_id> 
     <album_name>Don't say anything..</album_name> 
     <price>$10</price> 
    </track> 

    <track> 
     <id>212</id> 
     <name>My heart is a stereo</name> 
     <duration>150</duration> 
     <artist_id>14</artist_id> 
     <artist_name>Maroon 5</artist_name> 
     <album_id>30</album_id> 
     <album_name>Maroon 5 stereo</album_name> 
     <price>$15</price> 
    </track> 
</albums> 

は私が取得するにはどうすればよい

protected void LoadAlbumDetails(object sender, SelectionChangedEventArgs e) 
    { 
    IList rows = LibraryView.SelectedItems; 

    } 

を提出選択した行の名前(アルバム名)?

ie。

?rows[0].ToString() 
"<track>\r\n <id>212</id>\r\n <name>My heart is a stereo</name>\r\n <duration>150</duration>\r\n <artist_id>14</artist_id>\r\n <artist_name>Maroon 5</artist_name>\r\n <album_id>30</album_id>\r\n <album_name>Maroon 5 stereo</album_name>\r\n <price>$15</price>\r\n</track>" 

別にアルバム名を単独で取り出したいですか?何かご意見は?

答えて

0

アイテムをそのタイプにキャストすると、これはXElementなどのようになります。例えば

XElement row = (XElement)rows[0]; 
// <do something with row, access values etc.> 
row.Element("name").Value; 
+0

?row.Value 「212Myの心はstereo15014Maroon 530Maroon 5ステレオで$ 15」私は私の心を抽出したい は私の心はステレオタグである経由でステレオです。これは非常に近いです。 – Sharpeye500

+0

これはこれでした。 ?row.Element( "name")。Value – Sharpeye500