2011-10-08 44 views
0

基本上我在動態添加項目到列表框。在每個列表框項目的內部,我還添加了一個按鈕控件,用於對從中點擊按鈕的項目執行特定操作。如何確定一個按鈕被按下的listboxitem?

<DataTemplate> 
    <StackPanel> 
    <TextBlock Text="{Binding Title"/> 
    <Button Click="MyBtn_Click"/> 
    </StackPanel> 
</DataTemplate> 

有誰知道如何確定按鈕被點擊了哪個項目?我知道每個列表框項目都包含一個索引。我想如果你可以訪問按鈕的父母,那麼你可以確定哪個按鈕被點擊了?

回答

1

您可以使用該按鈕的CommmandParameter持有價值 -

<DataTemplate> 
    <StackPanel>  
    <TextBlock Text="{Binding Title}"/> 
    <Button Click="MyBtn_Click" CommandParameter={Binding Title}/> 
    </StackPanel> 
</DataTemplate> 

public void MyBtn_Click(object sender, args) 
{ 
    string MyVal = (sender as Button).CommandParameter.ToString(); 
} 

公約是改爲使用Command事件的單擊事件的這種類型的東西。

+0

工程很棒。謝謝。 – loyalpenguin