2012-11-26 37 views
0

我已經看到了很多問題和答案几乎相同的問題,但沒有一個答案不適用於我。所以,我的代碼是:訪問列表框中的Texblock最簡單的方法itemtemplate

<ListBox ItemsSource="{Binding Avakuvaandmed}" x:Name="lboxandmed" HorizontalAlignment="Left" Height="552" VerticalAlignment="Top" Width="970" SelectionChanged="lboxandmed_SelectionChanged" > 
        <ListBox.ItemTemplate> 
         <DataTemplate> 
          <StackPanel Orientation="Horizontal" x:Name="spanVärviSeda"> 
    I HAVE TO GET VALUE OF THIS --> <TextBlock x:Name="IDbox" Width="50" Text="{Binding Id}"></TextBlock> 
            <TextBlock Width="130" Text="{Binding Nrmärk}"></TextBlock> 
            <TextBlock x:Name="txtKehtivus" Width="130" Text="{Binding Lõpp}"></TextBlock> 
            <TextBlock Width="130" Text="{Binding Eesnimi}"></TextBlock> 
            <TextBlock Width="130" Text="{Binding Perenimi}"></TextBlock> 
            <TextBlock Width="130" Text="{Binding Mark}"></TextBlock> 
            <TextBlock Width="130" Text="{Binding Mudel}"></TextBlock> 
            <TextBlock Width="130" Text="{Binding Aasta}"></TextBlock> 
           </StackPanel> 
         </DataTemplate> 
        </ListBox.ItemTemplate> 
       </ListBox> 

而且我必須得到名爲「IDbox」的文本塊的值。 請有人可以幫助我,或者至少給我一個線索如何。

回答

0

您的代碼看起來正確。如果你想在後面的代碼中訪問IDbox的Value,那麼你可以通過Avakuvaandmed.ElementAt(rowno)來實現.Id是因爲你將Id綁定到了IDBox。如果您想訪問xaml中的BoxId值。然後按如下方式使用綁定:

{Binding Avakuvaandmed[rowno],Path=Id} 

您還可以使用VisualTreeHelper類訪問文本塊值。您將需要遍歷ListBox中的所有元素。

+0

對不起。我輸入錯誤你需要寫Avakuvaandmed.ElementAt(rowno) – techfun

+0

仍然沒有工作,也許我已經做了一些埃爾斯worng,因爲我得到以下錯誤: 名稱'Avakuvaandmed'不存在於當前的情況下 – Marek

+0

在xaml頁面,在UserControl.Resources裏面應該有集合Avakuvaandmed並且在代碼後面你需要通過lboxandmed.ItemSource訪問集合。只要確保你在Avakuvaandmed存在的適當範圍內。 – techfun

相關問題