WPF中如何获取DataGrid模板列中的控件

获取DataGrid模板列种的控件,百度出来的东西测试了都不行 ,有没有 其他的方法

DataGrid的
ItemContainerGanerator.ContainerFromIndex(int)可以拿到DataGridRow

DataGridColumn的
GetCellContainer(DataGridRow)可以拿到单元格的容器

假设单元格容器为cell, 模板中控件的命名为ctrlName
content = cell as ContentProcesser
template = content.ContentTemplate
ctrl = template.FindName(ctrlName, content)

DataGrid的
ItemContainerGanerator.ContainerFromIndex(int)可以拿到DataGridRow

DataGridColumn的
GetCellContainer(DataGridRow)可以拿到单元格的容器

这两个结合不知道能不能解决你的问题?

        FrameworkElement item = DataContainer.Columns[7].GetCellContent(DataContainer.Items[rowIndex]);
        DataGridTemplateColumn temp = (DataContainer.Columns[7] as DataGridTemplateColumn);

        if ((temp.CellTemplate.FindName("big", item) as RadioButton).IsChecked == true)
            weightStr = "大";