Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 列表框中当前项的名称_C#_Silverlight_Windows Phone 7_Xaml_Listbox - Fatal编程技术网

C# 列表框中当前项的名称

C# 列表框中当前项的名称,c#,silverlight,windows-phone-7,xaml,listbox,C#,Silverlight,Windows Phone 7,Xaml,Listbox,例如,我有一个简单的数据库(intid,stringtext)和listbox。 在每个listbox元素中,我都有一个文本块、图像和按钮 当我添加我想要的项目时,每个项目ListBox都被称为id。 当我单击按钮时,id以另一种形式传递,我可以在其中编辑数据库帖子 page.xaml <ListBox.ItemTemplate> <DataTemplate>

例如,我有一个简单的数据库(intid,stringtext)和listbox。 在每个listbox元素中,我都有一个文本块、图像和按钮

当我添加我想要的项目时,每个项目ListBox都被称为id。 当我单击按钮时,id以另一种形式传递,我可以在其中编辑数据库帖子

page.xaml

                <ListBox.ItemTemplate>
                    <DataTemplate>
                        <StackPanel Orientation="Horizontal" >
                            <Image Source="{Binding IconSource}"/>
                            <StackPanel>
                                <TextBlock Text="{Binding Text}"/>
                                <Button Click="Edit_Click1"></Button>
                            </StackPanel>
                        </StackPanel>
                    </DataTemplate>
                </ListBox.ItemTemplate>

如何命名listbox的当前项,然后知道此元素的名称?抱歉,英语太糟糕了。

您可以访问
列表框。选择editem
以获取所选项目:

private void Edit_Click1(object sender, RoutedEventArgs e)
{
    int id = (listbox.SelectedItem as MyClass).Id; 
    NavigationService.Navigate(new Uri("/EditTask.xaml?currentID="+id, UriKind.Relative));

}
这里我要计算的DataItem是表示每个项的类的名称

private void Edit_Click1(object sender, RoutedEventArgs e)
{
    int id = (listbox.SelectedItem as MyClass).Id; 
    NavigationService.Navigate(new Uri("/EditTask.xaml?currentID="+id, UriKind.Relative));

}
    private void Button_Click(object sender, RoutedEventArgs e)
    {
        var button = ((System.Windows.Controls.Button)sender);
        var clickedItem = (DataItem)button.DataContext;
        MessageBox.Show(clickedItem.Name);
    }