因为项目需要 要实现这个~
怎么实现画红框内容部分
田字格和上面Textbox 属于一个自定义控件 大致功能是获得一个字符串 和一组颜色值 最后田字格会显示不同颜色
这篇主要讲 DataGridTemplateColumn 并实现重写Datatemplate
重点注释 单独列出来了
LS 是列数据对象集合
listName是行数据对象集合
var Item = new FrameworkElementFactory(typeof(ItemControl)); //生成自定义对象
Item.SetBinding(ItemControl.SetRGBProperty, binding); //设置bing
MyDataTemplate.VisualTree = Item; 增加到可视树
扫描二维码关注公众号,回复:
8258908 查看本文章
-
public void addColumn()
-
{
-
LS.Add(
"表下カップ綿天竺仮縫い_37s_C_1");
-
LS.Add(
"上カップマーキしつけ_28s_C_2");
-
LS.Add(
"上下カップ接ぎ_33s_C_3");
-
LS.Add(
"上下カップ押え_62s_B_4");
-
LS.Add(
"カップ脇しつけ_14s_B_5");
-
LS.Add(
"表上カップレース端押さえ_41s_B_6");
-
for (
int i =
0; i < LS.Count; i++)
-
{
-
DataGridTemplateColumn dl =
new DataGridTemplateColumn();
-
-
dl.Header = LS[i];
-
DataTemplate MyDataTemplate =
new DataTemplate();
-
-
Binding binding =
new Binding()
-
{
-
Path =
new PropertyPath(
"Ml.Num" + (i +
1))
// 需绑定的数据源属性名
-
,
-
Mode = BindingMode.TwoWay
// 绑定模式
-
,
-
UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged
-
};
-
-
var Item =
new FrameworkElementFactory(
typeof(ItemControl));
-
Item.SetBinding(ItemControl.SetRGBProperty, binding);
-
-
-
MyDataTemplate.VisualTree = Item;
-
-
dl.CellTemplate = MyDataTemplate;
-
-
dataGrid.Columns.Add(dl);
-
}
-
}
因为是后台的 所以没有XAML什么事
想知道这个控件怎么生成的 可以看2019年10月的所有WPF文章 一步一步的知识点都在 还不明白的 可以留言
WPF 动态列(DataGridTemplateColumn) 绑定数据 (自定义控件)对象绑定改成对象了
今天头疼~ 不应该熬夜~