2012-08-01 91 views
0

我有一個數據網格在我的WPF應用程序窗口,我必須綁定到一個可觀察的集合。我必須向用戶提供選項才能編輯,刪除,添加和編輯此數據網格中的項目。編輯,刪除,添加項目到數據網格很容易

我在下面做了datagrid的綁定,但想問我該如何讓用戶輕鬆添加,編輯/更新,從數據網格中刪除項目。

這裏是我當前的代碼:

的.xaml

<DataGrid x:Name="dgrQuestions" AutoGenerateColumns="False" Height="272" HorizontalAlignment="Left" Margin="42,73,0,0" VerticalAlignment="Top" Width="669" ItemsSource="{Binding QuestionsList}"> 
     <DataGrid.Columns>     
      <DataGridTextColumn Header="FirstQues" Binding="{Binding Question}"/> 
      <DataGridTextColumn Header="SecondQues" Binding="{Binding Answer}"/> 
      <DataGridTextColumn Header="ThirdQues" Binding="{Binding Hint}"/> 
     </DataGrid.Columns> 
</DataGrid> 

.xaml.cs代碼

using Quest; //class having the format of the question 

public class Master 
{ 

    private ObservableCollection<Quest> questList; 
     public event PropertyChangedEventHandler PropertyChanged;   

     public ObservableCollection<Quest> QuestionList 
     { 
      get { return questList; } 
      set 
      {    
       questList = value; 
       if (PropertyChanged != null) 
        PropertyChanged(this, new PropertyChangedEventArgs("QuestionsList")); 
      } 
     } 

    //Add, Edit, Remove, Reset methods required 
} 

的.cs代碼(僅性質這裏提到)的爲其創建對象的類:

public string Question 
     { 
      get { return _question; } 
      set{ _question = value; OnPropertyChanged("Question"); } 
     } 

     public string Answer 
     { get { return _answer; } 
      set {_answer = value; OnPropertyChanged("Answer"); } 
     } 

     public string Hint 
     { 
      get { return _hint; } 
      set { _hint = value; OnPropertyChanged("Hint"); } 
     } 

回答

0

要添加/刪除,請確保將CanUserAddRows和CanUserDeleteRows屬性設置爲true。用戶應該能夠通過輸入底部的空白行來添加行,並通過選擇它們並按下鍵盤上的刪除來刪除行。

要編輯行,IsReadOnly屬性必須爲false(默認情況下爲false)。

相關問題