C# 以编程方式设置DataGridTemplateColumn CellTemplate
这个问题与其他已发布的问题类似,但似乎没有一个能提供在此有效的解决方案 问题: 尝试在运行时使用特定的DataTemplate创建C# 以编程方式设置DataGridTemplateColumn CellTemplate,c#,wpf,xaml,wpfdatagrid,wpf-4.0,C#,Wpf,Xaml,Wpfdatagrid,Wpf 4.0,这个问题与其他已发布的问题类似,但似乎没有一个能提供在此有效的解决方案 问题: 尝试在运行时使用特定的DataTemplate创建DataGridTemplateColumn。 只需要在DataTemplate中添加一个复选框 由于各种原因,我无法在XAML中为这个应用程序执行此操作,而且我知道使用FrameworkElementFactory是不推荐的 以下是我所拥有的: string dt = "<DataTemplate xmlns="http://schemas.microsof
DataGridTemplateColumn
。
只需要在DataTemplate中添加一个复选框
由于各种原因,我无法在XAML中为这个应用程序执行此操作,而且我知道使用FrameworkElementFactory
是不推荐的
以下是我所拥有的:
string dt = "<DataTemplate xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:src="clr-namespace:WpfApplication40" >
<CheckBox x:Name="dtCheckBox" Checked="CheckBox_Checked" /></DataTemplate>
DataGridTemplateColumn tc1 = new DataGridTemplateColumn();
DataTemplate datatemplate = (DataTemplate)System.Windows.Markup.XamlReader.Parse(dt);
tc1.CellTemplate = datatemplate;
dataGrid1.Columns.Add(tc1);
在运行时,我不断收到一个消息框:
“无法从文本“CheckBox\u Checked”创建“Checked”。
显然,它无法找出复选框\u Checked
处理程序在类中的位置,但是为什么呢
如果我取出Checked=“CheckBox\u Checked”
它工作正常
感谢您的见解。是否选中了
项
是否需要bool
值?我的印象是,Checked
表示是否选中了复选框
默认值。请尝试true
或false
。当然我可能完全错了。Checked
是一个寻找类方法的事件(RoutedEventHandler)是的。。。只需阅读文档即可。我在想isChecked
。我道歉。正在寻找可行的答案=)
public void CheckBox_Checked(object sender, RoutedEventArgs e){}