2015-02-06 2 views
-2

В моем коде, как я могу изменить значение в ListView?
у меня есть это:Как отредактировать элемент в ListView?

<ListView x:Name="EntreesListView"> 
    <ListView.View> 
    <GridView> 
     <GridViewColumn Header="Entrees" 
         Width="Auto" 
         DisplayMemberBinding="{Binding Name}"/> 

И это:

// Select all data in my database and add them into my column 
private void ListViewAllEntrees() 
{ 
    using (var selectAllEntrees = new Database1Entities()) 
    { 
     var selectName = 
      from monEntreeList 
      in selectAllEntrees.Entrees 
      select monEntreeList; 
      foreach (var entree in selectName) 
      { 
       EntreesListView.Items.Add(new {entree.Name}); 
      } 
// Now I want to edit for example the value at index 5 
// I click on a button which is in my ListView too 
var item = (sender as FrameworkElement).DataContext; 
int indexEntrees = EntreesListView.Items.IndexOf(item); 
// Now I have my index 
// I can RemoveAt(indexEntrees) and make a new Add but it is not a solution 

Так как я могу сделать, чтобы изменить имя параметра с индексом 5, пожалуйста?

+0

NO. SubItems не существует в WPF. Подниматься. Это не дублирование. Пожалуйста, прочитайте перед публикацией. – C0ZEN

ответ

1

Существует несколько способов решения этой задачи.

Вместо добавления каждого элемента в список. Вы можете использовать

EntreesListView.ItemSource = selectName; 
EntreesListView.Refresh(); 

Теперь ваш ответ, как получить или изменить 5-й или какой-либо элемент на какое-то событие, когда вы получите индекс элемента, который щелкнул

//get the item from original list 
var obj = selectName[index]; 
//make changes to your object and again change the ItemSource 
EntreesListView.ItemSource = selectName; 
EntreesListView.Refresh(); 
+0

Большое спасибо, я попробую это. – C0ZEN

Смежные вопросы