我有同樣的問題,因爲這太問題:TextBox, Button and ListBox in a ListBox不能鍵入類隱式轉換爲
,所以我把@Andy的答案,但它給了我麻煩:
private void ButtonAddNewTask_Click(object sender, RoutedEventArgs e)
{
Button btn = (Button)sender;
IssueView curIssue = (Issue)btn.DataContext;
if (curIssue != null)
{
curIssue.Issue.Comments.Add(new Comment()
{
Commentary = curIssue.NewCommentName
});
}
}
不知是否是我的錯誤,我沒有很好地將他的答案適應於我的代碼,如果帖子太舊或者@Andy忘記了某些東西,我無法得到什麼。
編輯我的班和適應按鈕單擊事件
public sealed class Issue
{
public string Name { get; set; }
public string Detail { get; set; }
private ObservableCollection<Comment> comments =
new ObservableCollection<Comment>();
public IList<Comment> Comments
{
get { return comments; }
}
}
public sealed class Comment
{
// string AssociatedIssue { get; set; }
public string Commentary { get; set; }
}
class IssueView : INotifyPropertyChanged
{
public Issue Issue { get; set; }
private string newCommentName = string.Empty;
public string NewCommentName
{
get { return newCommentName; }
set
{
newCommentName = value;
OnPropertyChanged("NewCommentName");
}
}
public event PropertyChangedEventHandler PropertyChanged;
private void OnPropertyChanged(string propName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propName));
}
}
}
這裏'Project'和'ProjectView'似乎是該提問者代碼的特定類(接口?)。你應該適應你的分類 – Pikoh
你正在使用什麼類型 – Nkosi
以下是我正在使用的課程,這些基本上與鏈接的SO問題相同 – Babuh