作者GooLoo (平凡)
看板C_Sharp
标题wpf datagrid问题
时间Wed Nov 7 08:56:47 2018
我可以对datagrid的cell写入data
我datagrid已经blind 100*100 data
我的Column Header命名是Col1到Col100
问题1:我想修改某cell值,
item[0].Col0=10, item[0].Col1=20,.....
我如何用for帮我对某些局部row, col修改
For (int i=0;i<50;i++)
For(int j=0;j<50;j++)
item[i]. j=10;
因Col1到Col100是一个.......属性, j是index,是一个int, 无法带
我看过网页教学和文件,都是用col1一个一个加
有人知道怎麽做吗?
问题2:winform时可以Datagrid1. Columns[i]. Rows[j]. isSelected==true)
所以cell依序判isselected
Wpf我试过,找不到isselected
有人知道在wpf怎麽依序判cell是不是isselected呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 42.72.44.101
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1541552210.A.46D.html
1F:→ testPtt: foreach(var cell in DataGrid.SelectedCells) 11/07 11:53
2F:→ testPtt: 不建议用程式控制ui写入资料 我实做只会直接写入不经过ui 11/08 14:13
3F:→ testPtt: 网路上可能能找到index取得指定cell的方法 11/08 14:15
4F:→ testPtt: 你在取得cell还要.DataContext再转型才写入 11/08 14:18
不懂你的意思耶,有范例吗? DataContext转型和直接写入的范例
网路看到都item整列写入,而我想修改其中一个cell的值而已
5F:→ testPtt: 直接修改data内容 或是找到cell.DataContext 11/08 21:14
6F:→ testPtt: 我从没做过ui从index去找 最後都要取出item对应的属性 11/08 21:58
7F:→ testPtt: 程式码可能像(cell.item as (type)).属性=要填的值; 11/08 22:02
8F:→ testPtt: 属性大概就你的col1,col2... 11/08 22:07
网上都是教GD1. Col1="10" ,这个我会。但我想做numericupdown去更新我
selected cell,现在已经可以得到selected cell index, 只差cell 不可以用index修
改, c#的datgridview可以culumns[i].Rows[j],WPF不行!
selected cell index是数字, Col1是属性, 无法带入
※ 编辑: GooLoo (1.171.26.119), 11/08/2018 23:10:57
9F:→ testPtt: 如果你是单纯数值方阵 那可能不适合DataGrid做 11/08 23:14
10F:→ testPtt: 你也可以在selected的同时去更新numericupdown的binding 11/08 23:18
对,单纯数值矩阵,因为之前datagridview有成功,转wpf失败,如果不适合,该用哪一个呢?
※ 编辑: GooLoo (1.171.26.119), 11/08/2018 23:35:44
11F:→ testPtt: 内建只有DataGrid可以 遇到这种需求我倾向写usercontrol 11/08 23:44
12F:→ GooLoo: 了解,感谢喔 11/09 12:31