2014-01-16 50 views
0

昨天我在工作中發現了不正確的一段代碼。我將兩種不同類型的Texboxes添加到同一個列表中。當我更改其中一個屬性名稱時,它們現在不會出現在StackPanel中。未添加到StackPanel的文本框

讓我告訴你,這是我的工作性質,當我點擊一個按鈕,它增加了一個標題TextboxStackpanel

ObservableCollection<string> _title = new ObservableCollection<string>(); 
public ObservableCollection<string> Title 
{ 
    get { return _title; } 
    set 
    { 
     _title = value; 
     OnPropertyChanged(() => Title); 
    } 
} 

這完美的作品,當我點擊一個按鈕,它添加標題TexboxStackPanel。當我嘗試做了一個問題Textbox它不會工作:

ObservableCollection<string> _questions = new ObservableCollection<string>(); 
public ObservableCollection<string> Questions 
{ 
    get { return _questions; } 
    set 
    { 
     _questions = value; 
     OnPropertyChanged(() => Questions); 
    } 
} 

我不明白爲什麼它不會添加爲我所調試的代碼同時爲冠軍問題,他們做一模一樣?

有沒有人知道我在我的代碼中犯的錯誤?

編輯:

public ViewModel() 
{ 
     this.AddQuestionCommand = new RelayCommand(new Action<object>((o) => OnAddQuestion())); 
     this.AddTitleCommand = new RelayCommand(new Action<object>((o) => OnAddTitle())); 
} 

private void OnAddQuestion() 
{ 
     this.Questions.Add("Question..."); 
} 

private void OnAddTitle() 
{ 
     this.Title.Add("Title..."); 
} 

 <ListView x:Name="QuestionList" ItemsSource="{Binding Question}" ItemTemplate="{DynamicResource Template}"> 
      <ListView.ItemContainerStyle> 
       <Style> 
        <Setter Property="FrameworkElement.Margin" Value="40,20,0,0"/> 
       </Style> 
      </ListView.ItemContainerStyle> 
      <ListView.Resources> 
       <DataTemplate x:Key="Template"> 
        <TextBox Text="{Binding .}" Width="200" HorizontalAlignment="Left"/> 
       </DataTemplate> 
      </ListView.Resources> 
     </ListView> 

編輯2:

ViewModel _viewModel = new ViewModel(); 
    public MainWindow() 
    { 
     InitializeComponent(); 
     base.DataContext = _viewModel; 
    } 
+1

你或許應該顯示代碼,你實際上* *添加文本框。 – Clemens

+0

@Clemens你需要XAML嗎? – user3157821

+0

XAML如果您在xaml中添加文本框。否則代碼隱藏。 – Rayet

回答

1

你的屬性是「問題」而不是「問題」 - 這可能是問題的根源

1

您的錯誤顯然不在您在此顯示的代碼中。除了名稱之外,這兩個代碼示例是相同的。所以如果一個人在工作而另一個人不在,那麼別的東西就會被打破。這也代表第一次編輯中的代碼。你只需要看看兩個完整的例子(包括XAML),看看有什麼不同。

請通過幫助中心的How to create a Minimal, Complete, Valid Example頁面進行閱讀,該頁面可幫助您提供更好的代碼示例。通常,遵循這些準則可能會導致您解決自己的問題。

+0

感謝您將現在看看鏈接,並將在問題上發佈我將解決我的問題。 – user3157821