你的位置:首页 > ASP.net教程

[ASP.net教程]【原创】有关Silverlight控件DataGrid的绑定数据后单元格单独复制的功能实现分析


前些日子,公司新需求需要对silverlight的datagrid进行局部任意单元格数据可复制,查阅了半天网络资料愣是没找到相关资料,开始还以为是silverlight的bug根部无法实现,

最后还是实现了。MSDN上也未曾记录这个事件,具体代码如下:

前段xaml文件 需要个datagrid绑定复制事件:

CopyingRowClipboardContent="dataGrid_CopyingRowClipboardContent"

后台代码实现如下:

 void dataGrid_CopyingRowClipboardContent(object sender,DataGridRowClipboardEventArgs e)    {      var temp = e.ClipboardRowContent;      var dgData = sender as DataGrid;      Int32 i = dgData.CurrentColumn.DisplayIndex;      string sColumnValue = ((TextBlock)this.dataGrid.Columns[i].GetCellContent(this.dataGrid.SelectedItem)).Text.Trim();      temp.Clear();      temp.Insert(0, new DataGridClipboardCellContent(e.Item, dgData.CurrentColumn, sColumnValue));    }

这样就能实现单元格复制了(也就是复制当前鼠标单击所在行所在咧 的单元格值),否则默认赋值是 复制一行 所有列数据。