【提问】WPF的DataGrid添加删除操作问题

rikalife 2012-05-30 11:14:51
最近在学习WPF,做了界面,不知道怎么发图。。。。
我只能把基本界面内容描述一下:
在一个页面Page上,添加一个DataGrid控件,用来显示文件名、文件大小、文件路径
另外有3个Button命令,选择文件、删除文件、发送。

点击选择文件,会弹出文件浏览选择框,选择要发送的文件
删除文件,删除Datagrid中的一条记录
发送,发送文件到目的地。

代码如下:


public partial class FileSendPage : Page
{
static string sendname;
List<FileCommon> FileList = new List<FileCommon>();//用来绑定到Datagrid上的数据源

public FileSendPage()
{
InitializeComponent();

}

//选择文件
private void btnAdd_Click(object sender, RoutedEventArgs e)
{
FileCommon fc = new FileCommon();//文件类:包括文件名、文件类型、文件大小、文件路径4个字段
fc= DataService.SelectFile();//该方法实现选择文件,并将文件的信息放入fc中
if (fc.TextName != "")
{
FileList.Add(fc);
BindToDG();
}
}
//删除选中文件
private void btnDelete_Click(object sender, RoutedEventArgs e)
{
FileCommon fc = new FileCommon();
fc = dgFile.SelectedItem as FileCommon;
dgFile.SelectedItems.Clear();
}

//绑定DataGrid的数据源
void BindToDG()
{
if (FileList.Count != 0)
{
dgFile.ItemsSource = FileList;
}
}


}





程序运行后,第一次点击选中文件后,选中的文件显示在DataGrid中了,再次点击选中文件,DataGrid没有任何变化,还是只有第一次的文件记录。
我设断点调试,FileList中明明已经有两条,但是DataGrid只显示一条。
单击删除文件,也没有反应。。。

请各位帮我看一下是什么原因,谢谢!
...全文
353 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cheng2005 2012-05-30
  • 打赏
  • 举报
回复
List没有实现INotifyCollectionChanged接口,
绑定集合一般用System.Collections.ObjectModel.ObservableCollection<T>
rikalife 2012-05-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
List没有实现INotifyCollectionChanged接口,
绑定集合一般用System.Collections.ObjectModel.ObservableCollection<T>
[/Quote]

我其他的地方也是直接用的list,可是没有出现问题。。。。

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧